thinkPHP實(shí)現(xiàn)多字段模糊匹配查詢的方法
本文實(shí)例講述了thinkPHP實(shí)現(xiàn)多字段模糊匹配查詢的方法。分享給大家供大家參考,具體如下:
引言:有時(shí)候查詢要匹配多個(gè)字段。比如查詢地址,地址是由多個(gè)字段組成的。有省、市、區(qū)等等,以及詳細(xì)地址。這個(gè)時(shí)候如何查詢呢?
實(shí)現(xiàn)不同字段相同的查詢條件
$User = M("User"); // 實(shí)例化User對象
$map['name|title'] = 'thinkphp';
// 把查詢條件傳入查詢方法
$User->where($map)->select();
用到項(xiàng)目中
if ($address) {
// 地址查詢
$where['b.province|b.city|b.area|b.detail'] = array('like', '%'.$address.'%');
$this->assign('address', $address);
}
這里就很簡單的解決了這個(gè)需求,而且很精準(zhǔn)。
生成的sql語句如下
SELECT a.*,b.name,b.tel,b.province,b.city,b.area,b.detail,b.zipcode
FROM sh_order a
LEFT JOIN sh_member_address b on a.member_id = b.member_id and b.selected = 1
WHERE ( `store_id` = '10' ) AND ( a.member_id IN ('7') ) AND ( (b.province LIKE '%宿城區(qū)%') OR (b.city LIKE '%宿城區(qū)%') OR (b.area LIKE '%宿城區(qū)%') OR (b.detail LIKE '%宿城區(qū)%') )
ORDER BY addtime desc, sendtime asc, paytime desc
LIMIT 0,10
從sql語句中可以看出,where中的括號,AND,OR組合的很巧妙。
截圖如下

更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》、《smarty模板入門基礎(chǔ)教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
- ThinkPHP多表聯(lián)合查詢的常用方法
- thinkphp實(shí)現(xiàn)like模糊查詢實(shí)例
- ThinkPHP查詢語句與關(guān)聯(lián)查詢用法實(shí)例
- ThinkPHP視圖查詢詳解
- ThinkPHP查詢返回簡單字段數(shù)組的方法
- thinkphp數(shù)據(jù)查詢和遍歷數(shù)組實(shí)例
- thinkphp學(xué)習(xí)筆記之多表查詢
- ThinkPHP5查詢數(shù)據(jù)及處理結(jié)果的方法小結(jié)
- ThinkPHP中的常用查詢語言匯總
- ThinkPHP采用GET方式獲取中文參數(shù)查詢無結(jié)果的解決方法
- Thinkphp使用mongodb數(shù)據(jù)庫實(shí)現(xiàn)多條件查詢方法
- thinkphp視圖模型查詢提示ERR: 1146:Table ''db.pr_order_view'' doesn''t exist的解決方法
- thinkPHP5實(shí)現(xiàn)的查詢數(shù)據(jù)庫并返回json數(shù)據(jù)實(shí)例
- thinkphp中多表查詢中防止數(shù)據(jù)重復(fù)的sql語句(必看)
- ThinkPHP中關(guān)聯(lián)查詢實(shí)例
- ThinkPHP5聯(lián)合(關(guān)聯(lián))查詢、多條件查詢與聚合查詢實(shí)例詳解
- thinkphp多表查詢兩表有重復(fù)相同字段的完美解決方法
- ThinkPHP like模糊查詢,like多匹配查詢,between查詢,in查詢,一般查詢書寫方法
相關(guān)文章
php web環(huán)境和命令行環(huán)境下查找php.ini的位置
這篇文章主要介紹了php web環(huán)境和命令行環(huán)境下如何查找php.ini的位置,需要的朋友可以參考下2019-07-07
淺談laravel orm 中的一對多關(guān)系 hasMany
今天小編就為大家分享一篇淺談laravel orm 中的一對多關(guān)系 hasMany,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10
CI框架入門示例之?dāng)?shù)據(jù)庫取數(shù)據(jù)完整實(shí)現(xiàn)方法
這篇文章主要介紹了CI框架入門示例的數(shù)據(jù)庫取數(shù)據(jù)完整實(shí)現(xiàn)方法,包含了配置、建表與實(shí)現(xiàn)MVC的完整過程,需要的朋友可以參考下2014-11-11
PHP中strlen()和mb_strlen()的區(qū)別淺析
這篇文章主要介紹了PHP中strlen()和mb_strlen()的區(qū)別淺析,本文探討的中英混合的字符在使用這個(gè)函數(shù)時(shí)的區(qū)別,需要的朋友可以參考下2014-06-06
php中的explode()函數(shù)實(shí)例介紹
在本篇文章里小編給大家分享了關(guān)于php中的explode()函數(shù)實(shí)例知識點(diǎn)內(nèi)容,有興趣的朋友們學(xué)習(xí)下。2019-01-01

