PostgreSQL:没有运算符匹配给定的名称和参数类型。

所以,我有这个代码

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

问题是我想制作每个时期的计数数据,因为它是一个人力资源开发计划,一个字段显示每个时期的工人总和,因为我们知道公司最终会获得和失去工人。然而我被这个错误弄糊涂了。任何人都可以帮助我吗?PS它在foreach里面


慕标5832272
浏览 180回答 1
1回答

守着星空守着你

Postgres 中的日期文字用单引号括起来,您的查询没有这样做。但除此之外,理想情况下,您应该在这里使用准备好的语句,它可以为您处理正确的文字转义。Codeigniter 不支持预处理语句,但它支持查询绑定:$sql =&nbsp; "SELECT id_anggota FROM karyawan WHERE EXISTS (";$sql .= "&nbsp; &nbsp; SELECT 1 FROM pengunduran_diri WHERE tgl_pengunduran <= ?)";$this->db->query($sql, array($row->end_date));
打开App,查看更多内容
随时随地看视频慕课网APP