Mysql Existe-t-il un moyen d'interroger ? Par exemple, la chaîne « 3,5 » est dans la chaîne « 3,4,5,2 »
La situation est probablement la suivante
Les utilisateurs ont plusieurs attributs, et l'attribut L'ID est utilisé dans la table utilisateur Un champ est stocké
tel que user_attr, le format de stockage de la valeur est : '3,4,5,2',
Explication : Par exemple, le numéro est l'ID d'attribut
Maintenant, le le front-end doit interroger les utilisateurs qui ont plusieurs attributs en même temps
Par exemple, le front-end Le format de l'ID d'attribut transmis qui doit être interrogé est : '3,5', le format de la chaîne
Comment dois-je écrire la requête ? J'utilise thinkphp5, <<in, comme si je les avais essayés mais aucun d'entre eux ne fonctionne>> ;
find_in_set() En savoir plus
comme la bonne réponse
Il n'est pas nécessaire d'utiliser une requête SQL ici. Convertissez le 3,5 transmis depuis le front-end en un tableau [3,5], puis 3,4,5,2 sont également convertis en un tableau. Comparez-le et vous. saura si c'est dedans ou pas
Convertissez 3 et 5 en tableaux, bouclez et épissez selon les conditions, user_attr comme '%3%' ou user_attr comme '%5%' groupé par identifiant utilisateur Peut-être que l'efficacité n'est pas si élevée, mais elle peut être obtenue