條件查詢方法
where方法
可以使用where
方法進行AND
條件查詢:
-
Db::table('think_user')
-
? ?->where('name','like','%thinkphp')
-
? ?->where('status',1)
-
? ?->find();
多字段相同條件的AND
查詢可以簡化為如下方式:
-
Db::table('think_user')
-
? ?->where('name&title','like','%thinkphp')
-
? ?->find();
whereOr方法
使用whereOr
方法進行OR
查詢:
-
Db::table('think_user')
-
? ?->where('name','like','%thinkphp')
-
? ?->whereOr('title','like','%thinkphp')
-
? ?->find();
多字段相同條件的OR
查詢可以簡化為如下方式:
-
Db::table('think_user')
-
? ?->where('name|title','like','%thinkphp')
-
? ?->find();
混合查詢
where方法和whereOr方法在復雜的查詢條件中經常需要配合一起混合使用,下面舉個例子:
-
$result?=?Db::table('think_user')->where(function?($query)?{
-
? ?$query->where('id',?1)->whereor('id',?2);
-
})->whereOr(function?($query)?{
-
? ?$query->where('name',?'like',?'think')->whereOr('name',?'like',?'thinkphp');
-
})->select();
生成的sql語句類似于下面:
-
SELECT?*?FROM?`think_user`?WHERE ?(??`id`?=?1?OR?`id`?=?2?)?OR?(??`name`?LIKE?'think'?OR?`name`?LIKE?'thinkphp'?)
文章來源:http://www.zghlxwxcb.cn/news/detail-494808.html
注意閉包查詢里面的順序,而且第一個查詢方法用where或者whereOr是沒有區(qū)別的。文章來源地址http://www.zghlxwxcb.cn/news/detail-494808.html
到了這里,關于tp5 whereor的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!