codeigniter数据库错误号1052

时间:2012-08-06 06:02:10

标签: php mysql codeigniter join where-clause

这是确切的错误:

Error Number: 1052

Column 'id' in where clause is ambiguous

SELECT * FROM (`membership_personal`) JOIN `membership_account` ON `membership_account`.`memberid` = `membership_personal`.`id` JOIN `swapaccount` ON `swapaccount`.`memberid` = `membership_account`.`memberid` WHERE `id` = '5'

Filename: /home/phpgod/public_html/johnnyarias/ci_website/models/generalfeaturesmodel.php

Line Number: 57

我知道它与连接的多个表中存在的id字段有关。所以我的问题是如何确保where子句中的id字段仅应用于member_personal表中的id字段?

3 个答案:

答案 0 :(得分:2)

WHERE `member_personal `.`id` = '5'

答案 1 :(得分:1)

您收到错误的原因是因为字段id存在于多个表中。因此,MySql无法决定您指的是哪个表id

解决方案是指定表名和列名。例如:

`tablename`.`id` = '5'

答案 2 :(得分:0)

$this->db->where('member_personal.id',5);