Mysql Gibt es eine Möglichkeit zur Abfrage? Beispielsweise liegt die Zeichenfolge „3,5“ innerhalb der Zeichenfolge „3,4,5,2“
Die Situation ist wahrscheinlich so:
Benutzer haben mehrere Attribute und das Attribut Die ID wird in der Benutzertabelle verwendet. Ein Feld wird gespeichert
wie user_attr, das Wertspeicherformat ist: '3,4,5,2',
Erklärung: Beispielsweise ist die Zahl die Attribut-ID
Jetzt die Das Front-End muss Benutzer abfragen, die mehrere Attribute gleichzeitig haben
Zum Beispiel das Front-End Das Format der übergebenen Attribut-ID, die abgefragt werden muss, ist: '3,5', das Format der Zeichenfolge
Wie soll ich die Abfrage schreiben? Ich verwende thinkphp5, <<in, als hätte ich diese ausprobiert, aber keines davon funktioniert>> ;
find_in_set() 了解下
like正解
这里不需要用sql查询,将前端传递来的3,5 转为数组[3,5] ,然后 3,4,5,2也转为数组,对比一下就知道在不里面了
把3,5转换为数组,循环拼接where条件,user_attr like '%3%' or user_attr like '%5%' groug by 用户id呢?可能效率没有那么高,可以实现