繁体   English   中英

如何在代码点火器中使用where子句并与2个参数分组

[英]how to use clause where and group with 2 paramater in code igniter

我有这样的模特

模型:

public function lihatgajiharian($id,$tglitung){
$status='m';
          $this->db->select('count( tgl ) AS total, absen.id, pegawai.nama, pegawai.bagian, pegawai.bagian, pegawai.tglmasuk, gaji.jenis_gaji, gaji.jumlah, gajiharian.id_gajiharian, gajiharian.status, gajiharian.tgldigaji,
          (CASE WHEN (weekday( tgl ) <=3) THEN date( tgl + INTERVAL( 3 - weekday( tgl ) )DAY )
          ELSE date( tgl + INTERVAL( 3 +7 - weekday( tgl ) )DAY )END) AS tglitung');
          $this->db->from('absen');
          $this->db->join('pegawai', 'pegawai.id = absen.id');
          $this->db->join('gaji', 'gaji.id = pegawai.id');
          $this->db->join('gajiharian', 'gajiharian.= absen.id','left');
          $this->db->where('absen.id',$id);
          $this->db->where('absen.status',$status);
          $this->db->group_by('absen.id');
          $this->db->group_by('tglitung');  
          $this->db->having('tglitung', $tglitung);
          $query = $this->db->get();
          return $query->row();

并出现错误,

错误号:1064

您的SQL语法有误; 查看与您的MySQL服务器版本相对应的手册,以获取在'absen附近使用的正确语法. 我在WHERE缺席. id = '15' AND '15 = '15' AND缺席. status = 'm' GROUP BY abs'在第6行,但是如果我尝试像这样在sql中运行查询

检查附近的第三次加入gajiharian您只将点放在那儿而不用列将其添加,问题将得到解决...

$status='m';
          $this->db->select('count( tgl ) AS total, absen.id, pegawai.nama, pegawai.bagian, pegawai.bagian, pegawai.tglmasuk, gaji.jenis_gaji, gaji.jumlah, gajiharian.id_gajiharian, gajiharian.status, gajiharian.tgldigaji,
          (CASE WHEN (weekday( tgl ) <=3) THEN date( tgl + INTERVAL( 3 - weekday( tgl ) )DAY )
          ELSE date( tgl + INTERVAL( 3 +7 - weekday( tgl ) )DAY )END) AS tglitung');
          $this->db->from('absen');
          $this->db->join('pegawai', 'pegawai.id = absen.id');
          $this->db->join('gaji', 'gaji.id = pegawai.id');
          $this->db->join('gajiharian', 'gajiharian.column= absen.id','left'); //in this line problem occurs
          $this->db->where('absen.id',$id);
          $this->db->where('absen.status',$status);
          $this->db->group_by('absen.id');
          $this->db->group_by('tglitung');  
          $this->db->having('tglitung', $tglitung);
          $query = $this->db->get();
          return $query->row();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM