cncml手绘网

标题: where查询表达式 [打印本页]

作者: admin    时间: 2018-9-14 13:13
标题: where查询表达式
b、表达式查询
8 G$ g- U# C4 H+ b' R6 ]表达式        含义& j5 J% B( J& g- x, I+ ]# ?- h
EQ        等于(=), O- s( f: C# B5 B0 }
NEQ        不等于(<>)
5 @+ p4 C1 t8 G6 f* M1 T  eGT        大于(>)7 \" ]9 v; Y" k9 e2 p$ c6 z9 a
EGT        大于等于(>=)
% n, s9 T/ U( v" R8 |% K, R; XLT        小于(<)
% p; b, A, @( G: fELT        小于等于(<=)
" f, w5 c6 ]( P% wLIKE        模糊查询
. {4 w5 E0 y1 f/ G1 T[NOT] BETWEEN        (不在)区间查询
+ X8 w3 P: x' m9 |6 \; Y- ~[NOT] IN        (不在)IN 查询
6 x/ J4 `- W9 @& h: ?EXP        表达式查询,支持SQL语法/ \5 O& ]) K, v1 L* O0 s) {

$ I' b& [3 J8 G  V1 [& H- G. ]$ ]
$where['status'] = array("eq",0);//字段就是数组的下标,值就是对应的条件
# p$ u, [! Y) f& Z: f( K, WM("User")->where($where)->select();//查询status为0的记录. d3 K! N7 ~) R( I9 \! `+ }+ Q8 h
$ J" ]. O+ d& B. b5 w
3、where方法数组查询例子5 ^- l1 Q2 @" ~
1、如何使用数组实现同一字段多个条件?比如,查询createdate大于等于2016年4月20日并且小于等于2016年4月23日的记录。
. d. W1 B% E3 M7 A0 t$where['createdate'] = array(array('EGT',"2016-04-20"),array('ELT',"2016-04-23"));//使用一个二维数组就可以解决同一字段多个条件$ H3 E: W' J+ E9 ~; m9 @
M("User")->where($where)->select();//查询createdate大于等于2016年4月20日并且小于等于2016年4月23日的记录' d' D6 s2 \& W+ a9 R

1 ~- r2 _& z8 M0 i) U& {2、数组查询使用OR查询?比如,查询status等于0或者1的记录。" j- C# E8 g, d# ^# O9 @0 c+ s& F
$where['status'] = array(array('EQ',"0"),array('EQ',"1"),"OR");//使用一个二维数组就可以解决同一字段多个条件
3 z/ I) d0 e$ A5 E' EM("User")->where($where)->select();//查询status等于0或者1的记录' t1 Q! \9 k* J

9 o( V$ ^# v) G! G) M3、多个条件里既有AND又有OR的数组查询?比如,查询createdate小于等于2016年4月20日并且status为1或者level为0的记录。3 Z1 x& ]3 d, b1 r+ ?
$where['createdate'] = array('EGT',"2016-04-20");& k# R) K) G8 i4 S5 _: t% e
$where['status'] = '1';% [& ]% x4 O" p! J( g9 U) z5 m
$condition['_logic'] = "AND";
% C, p, n7 t2 R! {8 z1 v+ l% G8 Z% n$map['_complex']=$where;
! T# j) L* T9 I% O$map['level']='0';4 l' Y) H- `- @3 A# ^6 z, w, J
$map['_logic']='OR';, L. I) j7 @3 m5 W
M("User")->where($map)->select();//查询createdate小于等于2016年4月20日并且status为1或者level为0的记录
6 @2 T! ~- v$ x" |8 P' y




欢迎光临 cncml手绘网 (http://www.cncml.com/) Powered by Discuz! X3.2