PostgreSQL:没有运算符匹配给定的名称和参数类型。您可能需要使用 exist 函数在 codeigniter 中添加显式类型转换

PostgreSQL: No operator matches the given name and argument types. You might need to add explicit type casts in codeigniter using exist function

所以,我有这个代码

$this->db->query('SELECT id_anggota FROM karyawan WHERE EXISTS ( SELECT id_anggota FROM pengunduran_diri WHERE tgl_pengunduran <= '.$row->end_date.')');

问题是我想统计每个时期的数据,因为它是一个 HRD 程序,一个字段显示每个时期的工人总数,因为我们知道公司最终会增加和失去工人。但是我对这个错误感到困惑。任何人都可以帮助我吗? P.S 它在 foreach 里面

Postgres 中的日期文字用单引号括起来,而您的查询没有这样做。但除此之外,理想情况下,您应该在此处使用准备好的语句,它会为您处理正确的文字转义。 Codeigniter 不支持准备好的语句,但它支持查询绑定:

$sql =  "SELECT id_anggota FROM karyawan WHERE EXISTS (";
$sql .= "    SELECT 1 FROM pengunduran_diri WHERE tgl_pengunduran <= ?)";
$this->db->query($sql, array($row->end_date));