【发布时间】:2013-01-16 09:27:59
【问题描述】:
Mysql codeigniter 查询无法正常工作。 假设如果 mysql 表看起来像这样:
user_id|user_name
1|john
2|alex
3|sam
这里 user_name 是唯一的
如果 user_name=john 和 user_id=1 和 true 如果说 user_name=john 和 user_id=2。
$this->db->get_where('user', array('user_name' => $name,'user_id !=' => $userid));
但在 user_name=john 和 user_id=1 的情况下返回 true。
谁能建议我另一种查询不等于的方法。
print($this->db->last_query()) 给出:
SELECT * FROM (user) WHERE user_name = 'john' AND user_id != '1'
【问题讨论】:
-
您是否有其他名字为 john 的用户?这也会返回 true。
-
试试这个并检查执行了什么查询 print "SQL Query: ".$this->db->last_query();
-
好吧,这就是 SELECT * FROM (
user) WHEREuser_name= 'john' ANDuser_id!= '1' 的样子。 1 是返回的行数。 -
这是正确的,只有您检查 user_id!= 是否明显 user_id 不相等,它才会返回 true,因为 1 != 2 所以它会返回 true
-
这会帮助你[同样的问题][1] [1]:stackoverflow.com/questions/5226261/…
标签: mysql codeigniter where