thinkphp中的多字段模糊匹配

2021-08-05 23:46:02 字數 991 閱讀 1153

$user = m

("user"

);// 例項化user物件

$map

['name|title'

] = 'thinkphp'

;// 把查詢條件傳入查詢方法

$user->where(

$map

)->select();

用到專案中

if

($address

)

這裡就很簡單的解決了這個需求,而且很精準。

生成的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

'%中原區%'

) or

(b.city like

'%中原區%'

) or

(b.area like

'%中原區%'

) or

(b.detail like

'%中原區%'

) )

order

by addtime

desc

, sendtime asc

, paytime desc

limit

0,10

mysql查詢多欄位 mysql多欄位模糊查詢

在最近的乙個專案需要實現在mysql單錶多關鍵字模糊查詢,但這數個關鍵字並不一定都存在於某個字段。例如現有table表,其中有title,tag,description三個字段,分別記錄一條資料的標題,標籤和介紹。然後根據使用者輸入的查詢請求,將輸入的字串通過空格分割為多個關鍵字,再在這三個欄位中查...

select 多欄位模糊查詢

表名為user 1 username admin,password 000000 2 username admin,password 123456 我們要實現的效果是可以輸入多個關鍵字查詢,多個關鍵字間以逗號分隔。使用上述表舉例 輸入單個關鍵字 admin 可查出這兩條資料,輸入 admin,000...

MYSQL 多欄位模糊查詢

mysql單錶多字段模糊查詢可以通過下面這個sql查詢實現 select from magazine where concat title,tag,description like 關鍵字 但是這樣有個問題,如果這三個欄位中有值為null,則返回的也是null,那麼這一條記錄可能就會被錯過,可以使用...