j'ai enregistrements dans la table d'utilisateur manière suivanteMYSQL correspondance des mots-clés csv colonne
id name address keywords
1 thompsan paris 10,20,30
2 samson paris 10,20,30
3 Nilawa paris 10,20,30
4 Nalama paris 100,30,50
5 Nalama paris 100,300,20
je besoin pour les utilisateurs qui ont les mots-clés de 10 ou 20. J'ai écrit cette requête:
SELECT * from User where keywords REGEXP '[[:<:]]10|20[[:>:]]'
Cela ne me donne pas la sortie attendue. Il devrait filtrer pour l'identifiant 10 ou 20 et me donner la sortie de l'enregistrement 1,2,3,5. l'enregistrement 4 ne correspond pas ici.
Pourquoi cela ne fonctionne-t-il pas? Y a-t-il une meilleure manière de faire cela?
Est-il possible d'ajouter un ensemble de chaînes au premier paramètre sans ajouter de chaîne? par exemple, FIND_IN_SET ('10, 20 ', mots-clés) – dev1234