搜尋

首頁  >  問答  >  主體

Mysql 有啥方法 能夠查詢 一個串在另一個串裡面

Mysql 有啥方法能夠查詢  例如  '3,5'  這個串, 是在  '3,4,5,2'串  內

情況大概是這個 

用戶有多個屬性, 屬性ID是在使用者表格用一個欄位儲存  

如user_attr,值儲存格式為:'3,4,5,2',

解釋下:例如數字就是屬性ID

現在前端需要查詢  同時具有多個屬性的使用者  

如前端傳過來所需要查詢的屬性ID格式為: '3,5' ,字串的格式

我該怎麼寫查詢呢,我用的thinkphp5,  <<in,like 這些我試過都不行>>



#
ECHOECHO1791 天前1011

全部回覆(5)我來回復

  • 孤独是一种态度

    孤独是一种态度2020-03-18 09:19:54

    find_in_set() 了解下

    回覆
    0
  • lk

    lk2020-01-15 18:29:13

    喜歡正確答案

    回覆
    0
  • junwind

    junwind2020-01-14 17:12:31

    這裡不需要用sql查詢,將前端傳遞來的3,5 轉為數組[3,5] ,然後3,4,5,2也轉為數組,對比一下就知道在不裡面了

    回覆
    0
  • null

    null2020-01-03 00:31:25

    把3,5轉換為數組,循環拼接where條件,user_attr like '%3%' or user_attr like '%5%' groug by 用戶id呢?可能效率沒有那麼高,可以實現

    回覆
    0
  • ECHO

    用like的話 3,13 5,15 這種沒辦法區分吧

    ECHO · 2020-01-04 16:00:36
  • 取消回覆