thinkPHP SQL語句中表示式查詢的格式

2021-08-27 23:36:23 字數 2037 閱讀 4025

對於那些要實現模糊判斷的查詢,比如大於、等於、小於之類的sql查詢,可以使用表示式查詢方式。

查詢表示式格式:$map['欄位名'] = array('表示式','查詢條件');

表示式含義

eq等於(=)

neq不等於(<>)

gt大於(>)

egt大於等於(>=)

lt小於(<)

elt小於等於(<=)

[not]like(中間無空格)

模糊查詢

[not] between(中間有空格)

(不在)區間查詢

[not] in

(不在)in查詢

exp表示式查詢,支援sql語法

ps:表示式不區分大小寫。

例子://eq:等於(=)

$map['id'] = array('eq', 1); //where 為id=1

//neq:不等於(<>)

$map['id'] = array('neq', 1); //where 為id<>1

//gt:大於(>)

$map['id'] = array('gt', 1); //where 為id>1

//egt:大於等於(>=)

$map['id'] = array('egt', 1); //where 為id>=1

//lt:小於(<)

$map['id'] = array('lt', 1); //where 為id<1

//elt:小於等於(<=)

$map['id'] = array('elt', 1); //where 為id<=1

//[not]like:模糊查詢

$map['user'] = array('like', '%小%'); //where 為like %小%

//[not]like:模糊查詢

$map['user'] = array('notlike', '%小%'); //where 為not like %小%

//[not]like:模糊查詢的陣列方式

$map['user'] = array('like', array('%小%', '%蠟%'), 'and');

//生成的sql

select * from `think_user` where ( (`user` like '%小%' and `user`

like '%蠟%') )

//[not] between:區間查詢

$map['id'] = array('between','1,3');

//where 為`id` between '1' and '2'

//同上等效

$map['id'] = array('between',array('1','3'));

//[not] between:區間查詢

$map['id'] = array('not between','1,3');

//where 為`id` not between '1' and '2'

//[not] in:區間查詢

$map['id'] = array('in','1,2,4');

//where 為`id` in ('1','2','4')

//[not] in:區間查詢

$map['id'] = array('not in','1,2,4');

//where 為`id` not in ('1','2','4')

//exp:自定義

$map['id'] = array('exp','in (1,2,4)');

//where 為`id` not in ('1','2','4')

ps:使用exp 自定義在第二個引數直接寫where 語句即可

//exp:自定義增加or 語句

$map['id'] = array('exp', '=1');

$map['user'] = array('exp', '="蠟筆小新"');

$map['_logic'] = 'or';

//where 為( (`id` =1) ) or ( (`user` ="蠟筆小新") )

C語言if語句中表示式的判斷

oh,no太久沒看c語言了,現在開始刷題居然老是犯同乙個錯,真鬧心。還記得大一剛學c語言的時候總是想把賦值號當等號使,沒想到時隔兩年重拾c還帶這樣 關於 賦值號 和等號 的問題 在if 表示式 中,我的這個毛病就很容易犯,就比如說下面這個題 include main 然後給了個選項是1,2,3,4,...

SQL語句中表名或欄位名帶空格

conn new oledbconnection provider microsoft.jet.oledb.4.0 data source c documents and settings sidney xtreme.mdb cmd new oledbcommand conn.open cmd.co...

for語句中的 和

for int i 0 i 100 i 和for int i 0 i 100 i 是程式設計中常用的兩個語句,這兩個語句看似作用類似但實際上在使用中卻容易產生很多意想不到的問題 入下例 這段 是用歸併排序演算法對陣列進行排序,在merge函式中有三個for語句,如果使用 和使用 會嘗試完全不同的結果...