0712-2888027 189-8648-0214
微信公眾號

孝感風信網絡科技有限公司微信公眾號

當前位置:主頁 > 技術支持 > MySQL > 利用MySQL中FIND_IN_SET函數進行字段中包含某字符串條件查詢

利用MySQL中FIND_IN_SET函數進行字段中包含某字符串條件查詢

時間:2024-09-09來源:風信官網 點擊: 1935次
風信建站在實際的項目開發(fā)中,需要針對數據庫表中某一個字段進行多條件查詢
字段信息如下:

利用MySQL中FIND_IN_SET函數進行字段中包含某字符串條件查詢

分析該catid字段由多個值組成

需要滿足的多條件查詢是:滿足該字段中包含158,159,160,161

我們可以利用MySQL中的FIND_IN_SET(str,strlist) 函數

假如字符串str 在由N 子鏈組成的字符串列表strlist 中, 則返回值的范圍在 1 到 N 之間 。一個字符串列表就是一個由一些被‘,’符號分開的自鏈組成的字符串。如果第一個參數是一個常數字符串,而第二個是type SET列,則   FIND_IN_SET() 函數被優(yōu)化,使用比特計算。如果str不在strlist 或strlist 為空字符串,則返回值為 0 。如任意一個參數為NULL,則返回值為 NULL。 這個函數在第一個參數包含一個逗號(‘,’)時將無法正常運行。  

編寫查詢的SQL語句如下:

SELECT * FROM its_company WHERE vip > 0 and (find_in_set('158', catid) or find_in_set('159', catid) or find_in_set('160', catid) or find_in_set('161', catid))

通過Where條件后面使用多個find_in_set配合or的條件,同時滿足多個條件的查詢需求。

風信建站承接企業(yè)網站二次開發(fā),可滿足企業(yè)根據量身定制的需求,針對性開發(fā)適合企業(yè)自身的產品,幫助企業(yè)完善互聯網產品提供技術支持,如您有二次開發(fā)需求或企業(yè)建站改版等需求服務可與我們聯系,服務熱線:18986480214。
欄目列表
推薦內容
熱點內容
展開