模型中的一个函数中包含多个mysql查询

6ss1mwsb  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(285)

是否可以在一个函数中运行2个mysql查询(选择avg,然后更新)?
如何使用:$this->db->error()打印/回显当前错误;或者$this->db->last_query()?
我的代码包含一个mysql子查询,有没有语法错误?
下面的代码似乎不起作用。我试图从第一个查询中获得一个平均值,然后将该查询用作存储(更新)到数据库的字段。请帮忙。。

public function updateReprob(){
    $id = $this->input->post('txtId');
return $rata2 = $this->db->query('SELECT AVG(harian) a from (select harian from sla limit 3) b');

    $field = array(
    'harian' => $this->input->post('nameharian'),
    'bulanan' => $rata2
    );

    $this->db->where('id', $id);
    $this->db->update('sla', $field);
    if($this->db->affected_rows() > 0){
        return true;
    }else{
        return false;
    }
}
6psbrbz9

6psbrbz91#

你得到结果的方法有错误。看看下面的代码

public function updateReprob(){
    $id = $this->input->post('txtId');
    $rata2 = $this->db->query('SELECT AVG(harian) a from (select harian from sla limit 3) b')->row();

    $field = array(
      'harian' => $this->input->post('nameharian'),
      'bulanan' => $rata2->a
    );

    $this->db->where('id', $id);
    $this->db->update('sla', $field);
    if($this->db->affected_rows() > 0){
        return true;
    }else{
        return false;
    }
}

希望对你有帮助!

相关问题