Requête mysql avec REGEX
Fermé
joboy84
Messages postés
21
Date d'inscription
jeudi 31 juillet 2008
Statut
Membre
Dernière intervention
22 janvier 2020
-
Modifié le 3 avril 2019 à 10:27
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 8 avril 2019 à 16:04
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 8 avril 2019 à 16:04
A voir également:
- Requête mysql avec REGEX
- Mysql download - Télécharger - Bases de données
- Erreur lors de l'envoi de la requête facebook marketplace - Forum Facebook
- Mysql error in file: /engine/classes/mysql.php at line 53 ✓ - Forum Réseaux sociaux
- Le paquet « mysql-server » n'a pas de version susceptible d'être installée ✓ - Forum Debian
- Graphql server responded with error 1675030: erreur lors de l’envoi de la requête. - Forum Facebook
2 réponses
Hello,
Peut être comme ça :
Peut être comme ça :
$datas = $database->pdo->prepare('SELECT * FROM jeux_concours WHERE categorie REGEXP (^|,)'.$cat.'($|,)');
Reivax962
Messages postés
3671
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
3 avril 2019 à 10:25
3 avril 2019 à 10:25
Bonjour,
L'utilisation d'une Regex se justifie-t-elle vraiment ? Dans l'exemple que tu donnes, non, mais peut-être fais-tu des choses plus compliquées derrière.
Personnellement, j'aurais répondu à ton problème de la façon suivante :
SELECT * FROM jeux_concours WHERE categorie LIKE '1,%' OR categorie LIKE '%,1' OR categorie LIKE '%,1,%'
Je ne vois pas de façon plus simple.
La méthode "propre" consisterait à transformer le champ categorie en table (en utilisant une fonction à créer) et faire une requête standard dessus.
Xavier
L'utilisation d'une Regex se justifie-t-elle vraiment ? Dans l'exemple que tu donnes, non, mais peut-être fais-tu des choses plus compliquées derrière.
Personnellement, j'aurais répondu à ton problème de la façon suivante :
SELECT * FROM jeux_concours WHERE categorie LIKE '1,%' OR categorie LIKE '%,1' OR categorie LIKE '%,1,%'
Je ne vois pas de façon plus simple.
La méthode "propre" consisterait à transformer le champ categorie en table (en utilisant une fonction à créer) et faire une requête standard dessus.
Xavier
8 avril 2019 à 16:04