本文實例講述了thinkphp普通查詢與表達式查詢。分享給大家供大家參考。具體分析如下:
一、普通查詢方式
a、字符串方式:
復制代碼 代碼如下:$arr=$m->where("sex=0 and username='gege'")->find();//字符串需要加引號
b、數組方式:
復制代碼 代碼如下:$data['sex']=0;
$data['username']='gege';
$arr=$m->where($data)->find();//傳上一個數組進行查詢,這種方式默認是and(並且)的關系
注意:如果使用or關系,需要添加數組值
復制代碼 代碼如下:$data['sex']=0;
$data['username']='gege';
$data['_logic']='or';//對數組添加_logic賦值為or(或者)關系
二、表達式查詢方式
復制代碼 代碼如下:$data['id']=array('lt',6);//數組的元素依然是數組
$arr=$m->where($data)->select();
/*
EQ 等於 //大小寫沒有關系
NEQ不等於
GT 大於
EGT大於等於
LT 小於
ELT小於等於
LIKE 模糊查詢*/
$data['username']=array('like','%ge%');//like加通配符查詢
$arr=$m->where($data)->select();//所有包含ge的都查詢出來
//NOTLIKE不包含
$data['username']=array('notlike','%ge%'); //notlike中間沒有空格
$arr=$m->where($data)->select();
//注意:如果一個字段要匹配多個通配符
$data['username']=array('like',array('%ge%','%2%','%五%'),'and');//如果沒有第三個值and,默認關系是or關系
$arr=$m->where($data)->select();//或者(or)能查到其中一個值就行
//BETWEEN
$data['id']=array('between',array(5,7));
$arr=$m->where($data)->select();
//SELECT * FROM `tp_user` WHERE ( (`id` BETWEEN 5 AND 7 ) )
$data['id']=array('not between',array(5,7));//注意,not 和 between中間一定要有空格
$arr=$m->where($data)->select();
//IN
$data['id']=array('in',array(4,6,7));
$arr=$m->where($data)->select();
//SELECT * FROM `tp_user` WHERE ( `id` IN (4,6,7) )
$data['id']=array('not in',array(4,6,7));
$arr=$m->where($data)->select();
//SELECT * FROM `tp_user` WHERE ( `id` NOT IN (4,6,7) )
希望本文所述對大家的thinkphp框架程序設計有所幫助。