在Codeigniter中执行Query时出错

时间:2018-03-06 07:34:09

标签: php mysql codeigniter-3

我使用codeigniter开发一个网站。我试图加入多个表并得到以下错误。

发生数据库错误 错误号码:1064

您的SQL语法有错误;查看与您的MariaDB服务器版本对应的手册,以获得正确的语法,以便在table1附近使用。value ASC'在第4行

SELECT `table1`.* FROM `table1` LEFT JOIN `table2` ON `table2`.`id`=`table1`.`id` WHERE `table1`.`p_id` IN() ORDER BY `table1`.`value` ASC

文件名:C:/xampp/htdocs/limca/system/database/DB_driver.php

行号:691

如何解决此错误?

3 个答案:

答案 0 :(得分:4)

WHERE IN(?)

中添加一些值
SELECT `table1`.* FROM `table1` 
LEFT JOIN `table2` ON `table2`.`id`=`table1`.`id` 
WHERE `table1`.`p_id` IN(?) ORDER BY `table1`.`value` ASC 

答案 1 :(得分:2)

您必须在where table1.p_id in(1,2,3)子句

中传递逗号分隔的ID

答案 2 :(得分:2)

IN()无法为空,您需要传递值。

`table1`.`p_id` IN('id1','id2')