where
where方法的用法是ThinkPHP查詢語(yǔ)言的精髓,也是ThinkPHP ORM的重要組成部分和亮點(diǎn)所在,可以完成包括普通查詢、表達(dá)式查詢、快捷查詢、區(qū)間查詢、組合查詢?cè)趦?nèi)的查詢操作。where方法的參數(shù)支持字符串和數(shù)組,雖然也可以使用對(duì)象但并不建議。
表達(dá)式查詢
新版的表達(dá)式查詢采用全新的方式,查詢表達(dá)式的使用格式:
Db::table('think_user')
->where('id','>',1)
->where('name','thinkphp')
->select();
更多的表達(dá)式查詢語(yǔ)法,可以參考查詢語(yǔ)法部分。
數(shù)組條件
可以通過數(shù)組方式批量設(shè)置查詢條件。
普通查詢
最簡(jiǎn)單的數(shù)組查詢方式如下:
$map['name'] = 'thinkphp';
$map['status'] = 1;
// 把查詢條件傳入查詢方法
Db::table('think_user')->where($map)->select();
// 助手函數(shù)
db('user')->where($map)->select();
最后生成的SQL語(yǔ)句是
SELECT * FROM think_user WHERE `name`='thinkphp' AND status=1
表達(dá)式查詢
可以在數(shù)組條件中使用查詢表達(dá)式,例如:
$map['id'] = ['>',1];
$map['mail'] = ['like','%thinkphp@qq.com%'];
Db::table('think_user')->where($map)->select();
字符串條件
使用字符串條件直接查詢和操作,例如:
Db::table('think_user')->where('type=1 AND status=1')->select();
最后生成的SQL語(yǔ)句是
SELECT * FROM think_user WHERE type=1 AND status=1
使用字符串條件的時(shí)候,建議配合預(yù)處理機(jī)制,確保更加安全,例如:
Db::table('think_user')->where("id=:id and username=:name")->bind(['id'=>[1,\PDO::PARAM_INT],'name'=>'thinkphp'])->
文檔最后更新時(shí)間:2018-04-26 09:34:53
table →
未解決你的問題?請(qǐng)到「問答社區(qū)」反饋你遇到的問題