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

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2018-9-14 13:13:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
b、表达式查询. u. x' ]7 E! V; f8 F5 s$ e) z: i8 A
表达式        含义
' f0 u0 Q0 d' u* S* G) kEQ        等于(=)6 }  x( H, X3 S7 U
NEQ        不等于(<>)
. u) V" E8 O5 z" ]1 B* l$ aGT        大于(>)5 n5 j# `1 |: H( q! A5 \+ }
EGT        大于等于(>=)6 A- N, j8 I8 }
LT        小于(<)% L3 v! }7 R% }- _
ELT        小于等于(<=)
$ g5 y% O1 n& a  f# BLIKE        模糊查询% R0 h9 p4 m/ _! h( `+ b/ `, F
[NOT] BETWEEN        (不在)区间查询
! J* [) |. Q8 e( X; T# f% L[NOT] IN        (不在)IN 查询
5 E$ z: X1 b& r/ I- gEXP        表达式查询,支持SQL语法
) r2 s# I, t& u8 u7 I# r/ `
5 [0 e4 t  k. }* w+ R. b
6 a; N. w" _' V$where['status'] = array("eq",0);//字段就是数组的下标,值就是对应的条件# }% {0 p4 K7 G& c6 V& q% r/ Q
M("User")->where($where)->select();//查询status为0的记录
/ k3 }( L; b& O( _& i5 N3 }
2 e& W  M1 @6 }8 v7 j3、where方法数组查询例子( C7 }" c9 y8 q3 i
1、如何使用数组实现同一字段多个条件?比如,查询createdate大于等于2016年4月20日并且小于等于2016年4月23日的记录。+ D0 u# w' ^' I6 o1 @
$where['createdate'] = array(array('EGT',"2016-04-20"),array('ELT',"2016-04-23"));//使用一个二维数组就可以解决同一字段多个条件
$ Y+ t& b9 ^0 mM("User")->where($where)->select();//查询createdate大于等于2016年4月20日并且小于等于2016年4月23日的记录3 Q0 \4 \* t4 v5 J$ G

( c% k7 f0 n6 W& Q2、数组查询使用OR查询?比如,查询status等于0或者1的记录。
/ @" H, [4 C0 P$where['status'] = array(array('EQ',"0"),array('EQ',"1"),"OR");//使用一个二维数组就可以解决同一字段多个条件! n/ G8 b0 V  Q! q
M("User")->where($where)->select();//查询status等于0或者1的记录
4 E0 ]3 c& z+ _. j" Z7 {5 C6 X- |
3、多个条件里既有AND又有OR的数组查询?比如,查询createdate小于等于2016年4月20日并且status为1或者level为0的记录。
" D/ R5 x/ Z- q8 K! Z( D* X  p$where['createdate'] = array('EGT',"2016-04-20");6 N& ?( m+ N, {, p& a
$where['status'] = '1';$ m& y7 z& u) O) L2 A
$condition['_logic'] = "AND";
5 W* B: f! f4 Z* n! B, y: P$map['_complex']=$where;
7 B8 ~( u) Q# i9 [$map['level']='0';' M# b1 k3 @# {$ U/ D& N/ ?3 i
$map['_logic']='OR';
& H: I: j1 Z% u% o5 [- |, z- yM("User")->where($map)->select();//查询createdate小于等于2016年4月20日并且status为1或者level为0的记录
) `, s" L7 K' }/ X. ^# W
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2024-5-9 20:51 , Processed in 0.128791 second(s), 21 queries .

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