thinkphp复合WHERE查询的写法
where (id != 5 and age > 20 ) or (id > 15 and age < 18 ) ;
用 $map["_complex"] 例如: $where["name"] = array("like","%thinkphp%"); $where["title"] = array("like","%thinkphp%"); $where["_logic"] = "or"; $map["_complex"] = $where; $map["id"] = array("gt",1); 查询条件是 ( id > 1) AND ( ( name like "%thinkphp%") OR ( title like "%thinkphp%") )
//另外, in 、FIND_IN_SET("1",user_per) 查询方法 【[注:in前的变量用于数值, FIND_IN_SET后的变量用于字符串】
if($catid){ $catarray[]="1,2"; $map["cat_id"]=array("in",$catarray); } if($brand_id){ $map["brand_id"]=$brand_id; $where=$map; } if($user_per){ //FIND_IN_SET("1",user_per) $map["_string"] = "FIND_IN_SET(".""$user_per"".",user_per)"; $where=$map; }
=========================
注意:
select * from treenodes where FIND_IN_SET($id,"1,2,3,4,5");
select * from treenodes where FIND_IN_SET($id,id);
(变量,数据库字段)
使用find_in_set函数一次返回多条记录
id 是一个表的字段 然后每条记录分别是id等于1,2,3,4,5的时候
有点类似in (集合)
select * from treenodes where id in (1,2,3,4,5);
另外,一对多
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇: TP 上传图片 (可上传多图)
- 下一篇: 环信IM 集成服务器端(php