#1 Wed 27 June 2007 13:56
Requête SQL par mot clé
Bonjour,
ce sujet a sûrement déjà du être abordé mais je ne l'ai pas trouvé.
Je souhaite faire une requête SQL sous MI en entrant un mot clé seulement. Par exemple, j'ai une table avec une champ département (en caractère) avec plusieurs valeurs telles que "Haute Garonne", "Tarn", "Tarn et Garonne", "Lot", "Ariège", "Lot et Garonne" et je voudrais avoir dans ma sélection tous les éléments qui ont le mot "Garonne" dans leur champ département.
Merci et bonne après midi
Sam
Hors ligne
#4 Wed 27 June 2007 14:58
Re: Requête SQL par mot clé
Eh bien, dis-nous comment tu t'y es pris exactement ?
Du coup, à quoi ressemble ta requête ?
Cela ne fonctionne pas ? Comment ? Mauvaise sélection, aucune sélection, mauvaise syntaxe... ?
Jérôme Cuinet
L'avantage de la Chine, c'est que le soleil se couche plus tard !
Hors ligne
#5 Wed 27 June 2007 15:47
Re: Requête SQL par mot clé
En fait j'ai dans la case table le nom de ma table : entites
Dans la case critères je mets : departement Like "*garonne"
Et là le message "aucun objet dans la sélection" apparaît. J'ai aussi essayé avec l'étoile après mais aucun changement.
Quelqu'un a-t-il une idée ?
Merci
Sam
Hors ligne
#6 Wed 27 June 2007 16:22
- Emil'
- Participant actif
- Lieu: Plaisir
- Date d'inscription: 7 Mar 2007
- Messages: 132
Re: Requête SQL par mot clé
Bonjour,
Utilise le "%" pour encadrer le mot recherché.
Exemple:
Departement like "%Garonne%"
PS: Je ne savais pas non plus, je viens de trouver la réponse ici:
http://sql.1keydata.com/fr/sql-like.php
Hors ligne
#7 Wed 27 June 2007 16:41
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Requête SQL par mot clé
Voilà les détails d'utilisation de la fonction Like(): Like( string , pattern_string , escape_char )
Cette fonction est sensible à la casse (aux majuscules)
Les wild_card possibles avec la pattern_string, sont:
_ (underscore) remplace UN unique caractère
% (percent) remplace de zéro à n caractères
Pour chercher une string comportant l'un des wild_card, il faut utiliser un escape_char (par exemple "\") que l'on définit
Si on n'en utilise pas il faut mettre "" en troisième paramètre
Exemples de recherche d'une string:
commençant par "South" -> Like( string_var, "South%", "" )
commençant par "America" -> Like( string_var, "%America", "" )
contenant "ing" n'importe où -> Like( string_var, "%ing%", "" )
commençant par underscore -> Like( string_var, "\_%", "\")
L'opérateur Like est lui insensible à la casse et fonctionne avec les mêmes wild-card mais ne permet pas l'utilisation d'escape_char.
Excuse for english mais j'ai quand même un peu traduit
Dernière modification par Maurice (Wed 27 June 2007 16:53)
Hors ligne
#8 Wed 27 June 2007 16:44
- frtou
- Participant actif
- Lieu: Cergy
- Date d'inscription: 6 Sep 2005
- Messages: 71
Re: Requête SQL par mot clé
A la place de * mettre %
departement Like "%garonne%"
[EDIT Maurice] c'est la bonne: on obtient ce qui contient garonne (ou Garonne, ou gaRoNne, etc...) n'importe où
Hors ligne
#9 Wed 27 June 2007 16:54
Re: Requête SQL par mot clé
la syntaxe est: LIKE "%garonne"
[EDIT Maurice] avec cette syntaxe on obtient uniquement ce qui finit par garonne (ou Garonne, ou gaRoNne, etc...)
michel.poinsot@ bourgogne.ecologie.gouv.fr
Hydrométrie
Information & Promotion de l'Environnement
DIREN Bourgogne
10 Bd Carnot
21000 Dijon
Tél : 33 (0)3 80 68 02 41
Hors ligne