您尚未登录,请登录后浏览更多内容! 登录 | 立即注册

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 9588|回复: 0
打印 上一主题 下一主题

[thinkphp学习资料] where查询表达式

[复制链接]
跳转到指定楼层
楼主
发表于 2018-9-14 13:13:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
b、表达式查询9 Z# w/ w5 R. v0 n
表达式        含义; S& D" h2 h" p3 f* s
EQ        等于(=)/ f/ i- \# d% _( C6 h
NEQ        不等于(<>)
$ o! n' \4 t& c' M7 {% w$ Z2 O6 jGT        大于(>)+ n0 x+ ^' b6 J7 a# V3 J5 R
EGT        大于等于(>=)
3 A) L) d" a" t' ULT        小于(<)) n2 J! _( I: ^, ~
ELT        小于等于(<=)
$ l3 m% m( Y  }' k5 z( XLIKE        模糊查询" k  K& [5 s; }) E
[NOT] BETWEEN        (不在)区间查询
* S3 X* p1 ?7 a- L5 C9 q; |& u[NOT] IN        (不在)IN 查询. O# r$ F/ n- N. D" x8 u7 b: Z
EXP        表达式查询,支持SQL语法
2 a- k2 p1 A* e7 ?) F
9 [6 a6 m$ Y7 C" a1 D
' L- g# A7 Y. j/ F4 l$where['status'] = array("eq",0);//字段就是数组的下标,值就是对应的条件
# m% b4 z5 Z: PM("User")->where($where)->select();//查询status为0的记录4 k6 D* }8 u& L/ W
4 m% u' m9 ~5 `3 U; t( G8 w
3、where方法数组查询例子! h0 m( I7 w; j2 ]7 {0 a
1、如何使用数组实现同一字段多个条件?比如,查询createdate大于等于2016年4月20日并且小于等于2016年4月23日的记录。" Q7 n% Y$ a2 t3 Y1 G+ [% P1 W
$where['createdate'] = array(array('EGT',"2016-04-20"),array('ELT',"2016-04-23"));//使用一个二维数组就可以解决同一字段多个条件
' e" j9 F* t: V, t. v4 kM("User")->where($where)->select();//查询createdate大于等于2016年4月20日并且小于等于2016年4月23日的记录' Q; @5 f; C7 j6 i
* t8 c- s) Q; B) Y3 x
2、数组查询使用OR查询?比如,查询status等于0或者1的记录。
9 _% T7 m6 Z3 g* j$where['status'] = array(array('EQ',"0"),array('EQ',"1"),"OR");//使用一个二维数组就可以解决同一字段多个条件
- {! x: f  \1 w, FM("User")->where($where)->select();//查询status等于0或者1的记录, `; R# i( |5 A5 K1 ]# Z! f

5 b4 N" ^3 j9 D- U( q3、多个条件里既有AND又有OR的数组查询?比如,查询createdate小于等于2016年4月20日并且status为1或者level为0的记录。
2 ?+ C0 j% Y3 {0 G$where['createdate'] = array('EGT',"2016-04-20");
# y# u$ k5 ~) s$where['status'] = '1';
+ M. n) Z/ f. U0 B0 u' l# F/ {. l$condition['_logic'] = "AND";) V; H, s( c* C4 [
$map['_complex']=$where;
! H1 w/ s6 N) O0 @8 T4 O$map['level']='0';. k! b, `$ n9 r8 k: t2 H3 P8 m: a
$map['_logic']='OR';
& g2 S/ r! b. L: U, nM("User")->where($map)->select();//查询createdate小于等于2016年4月20日并且status为1或者level为0的记录
& T8 F2 z: \5 Q1 E7 g, L. b3 @
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2024-5-20 05:19 , Processed in 0.121542 second(s), 19 queries .

Copyright © 2001-2024 Powered by cncml! X3.2. Theme By cncml!