我试图生成从那里名字的姓的任意组合相匹配的特定搜索字词Zend Framework的SQL SELECT查询建设(WHERE子句)
$select = $select->where('last_name LIKE ?', '%'.$term.'%')->orWhere('first_name LIKE ?', '%'.$term.'%')
->orWhere("CONCAT(first_name,' ', last_name) LIKE ?", '%'.$term.'%')
->orWhere("CONCAT(last_name,' ', first_name) LIKE ?", '%'.$term.'%');
有一个用户表中选择的所有查询就是有也必须满足它在另一个where子句
$select = $select->where("deleted = 0 AND scholar = 0");
下面的SQL语句生成
SELECT `user`.* FROM `user` WHERE (last_name LIKE '%frank%') OR (first_name LIKE '%frank%') OR (CONCAT(first_name,' ', last_name) LIKE '%frank%') OR (CONCAT(last_name,' ', first_name) LIKE '%frank%') AND (deleted = 0 AND scholar = 0) ORDER BY `date_created` desc LIMIT 25
规定的其他条件
这不会返回所需的结果,因为我得到的行在哪里scholar = 1;
我想通查询应该是
SELECT `user`.* FROM `user` WHERE ((last_name LIKE '%frank%') OR (first_name LIKE '%frank%') OR (CONCAT(first_name,' ', last_name) LIKE '%frank%') OR (CONCAT(last_name,' ', first_name) LIKE '%frank%')) AND (deleted = 0 AND scholar = 0) ORDER BY `date_created` DESC LIMIT 25
什么是正确的语法使用$选择对象实现这一目标。