TP框架中模糊查詢實現
$where['g.name'] = array('like','%'.$groupname.'%');
-
表達式查詢
上面的查詢條件僅僅是一個簡單的相等判斷,可以使用查詢表達式支持更多的SQL查詢語法,查詢表達式的使用格式:
$map['字段1'] = array('表達式','查詢條件1');
$map['字段2'] = array('表達式','查詢條件2');
$Model->where($map)->select(); // 也支持
表達式不分大小寫,支持的查詢表達式有下面幾種,分別表示的含義是:
表達式 |
含義 |
EQ |
等於(=) |
NEQ |
不等於(<>) |
GT |
大於(>) |
EGT |
大於等於(>=) |
LT |
小於(<) |
ELT |
小於等於(<=) |
LIKE |
模糊查詢 |
[NOT] BETWEEN |
(不在)區間查詢 |
[NOT] IN |
(不在)IN 查詢 |
EXP |
表達式查詢,支持SQL語法 |
-
多次調用
3.1.3版本開始,where方法支持多次調用,但字符串條件只能出現一次,例如:
$map['a'] = array('gt',1);
$where['b'] = 1;
$Model->where($map)->where($where)->where('status=1')->select();
多次的數組條件表達式會最終合並,但字符串條件則只支持一次。