[SQL] Cherche la bonne instruction
11laurent11
Messages postés
31
Statut
Membre
-
takman -
takman -
Bonjour,
Je cherche à effectuer une opération assez basique en SQL mais je ne trouve pas la bonne commande pour y arriver.
J'ai par exemple une table contenant des articles, par exemple des fruits (pomme, poire, cerise, ananas, citron). Je voudrais avec un SELECT prendre le fruit qui se trouve dans une chaine de caractères données:
SELECT fruit from base de données WHERE fruit ... 'j'aime les poires en été'
A la place des ... j'avais pensé utilisé un LIKE mais ça ne marche pas. La requête doit rechercher la présence du contenu de la colonne fruit dans la chaine de caractères que je lui envoie. Ca me paraissait pourtant simple mais je n'y arrive pas.
Vous avez une idée ?
Merci
Laurent
Je cherche à effectuer une opération assez basique en SQL mais je ne trouve pas la bonne commande pour y arriver.
J'ai par exemple une table contenant des articles, par exemple des fruits (pomme, poire, cerise, ananas, citron). Je voudrais avec un SELECT prendre le fruit qui se trouve dans une chaine de caractères données:
SELECT fruit from base de données WHERE fruit ... 'j'aime les poires en été'
A la place des ... j'avais pensé utilisé un LIKE mais ça ne marche pas. La requête doit rechercher la présence du contenu de la colonne fruit dans la chaine de caractères que je lui envoie. Ca me paraissait pourtant simple mais je n'y arrive pas.
Vous avez une idée ?
Merci
Laurent
A voir également:
- [SQL] Cherche la bonne instruction
- Logiciel sql - Télécharger - Bases de données
- Jointure sql ✓ - Forum MySQL
- Sql (+) - Forum Programmation
- Requete sql pix - Forum PHP
- Ajoutez une instruction pour faire afficher le mot secret construit. ✓ - Forum Python
4 réponses
Salut,
tout dépend ton SQL...
La plupart ont des fonctions de chaines de caractères (dont la recherche d'une chaine dans une autre).
Sous ACCESS (fonctions VBA), ça pourrait donner :
tout dépend ton SQL...
La plupart ont des fonctions de chaines de caractères (dont la recherche d'une chaine dans une autre).
Sous ACCESS (fonctions VBA), ça pourrait donner :
WHERE InStr('j'aime les poires en hiver',fruit)
Super merci, je n'ai pas réussi à utiliser INSTR mais ça m'a mis sur la piste pour trouver une solution. L'instruction que j'ai utilisée est la suivante:
SELECT * FROM matable where POSITION (XX IN YY)>0
Si la chaine XX est trouvée dans YY, la position sera au moins de 1 d'où l'utilisation du >0
SELECT * FROM matable where POSITION (XX IN YY)>0
Si la chaine XX est trouvée dans YY, la position sera au moins de 1 d'où l'utilisation du >0
Tu utilise Mysql ? Dans ce cas essaye donc de faire cela :
L'utilisation des expression régulière marchera dans lapluaprts des cas, mais il risque d'y avoir quelque problème si "fruit" contient certain caratère spéciaux.
SELECT fruit FROM base de données WHERE 'j'aime les poires en été' REGEXP fruit;
L'utilisation des expression régulière marchera dans lapluaprts des cas, mais il risque d'y avoir quelque problème si "fruit" contient certain caratère spéciaux.