Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/05/2011, 16h47   #1
Candidat au titre de Membre du Club
 
Étudiant
Inscription : octobre 2010
Messages : 67
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2010
Messages : 67
Points : 11
Points : 11
Par défaut un paramètre dans LIKE

Bonjour à tous!

J'ai une question par rapport à la fonction LIKE:
Nous savons que l'on peut faire une requête où l'on peut demander si une partie d'un mot se trouve dans un champ
par exemple : LIKE '%poisson%'

En fait, j'ai rentré dans plusieurs case de mon champ 2 ou 3 valeurs(texte)
Par exemple : "Viandes, poisson"

J'aimerais, grâce à un paramètre, savoir si l'on peut utiliser LIKE avec le paramètre? du genre :
LIKE '%[paramètre]%'

Cordialement.
fny_bnfnt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2011, 20h18   #2
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonjour,

Ça devrait fonctionner comme ça :
LIKE '%' & [paramètre] & '%'
Je suppose que ta requête se fait par ADO, ou bien que tu as activé la compatibilité SQL ANSI-92.
Sinon il faut utiliser * à la place de %

A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 30/05/2011, 20h37   #3
Rédacteur/Modérateur
 
Avatar de Philippe JOCHMANS
 
Homme Philippe JOCHMANS
Développeur informatique
Inscription : mai 2005
Messages : 17 616
Détails du profil
Informations personnelles :
Nom : Homme Philippe JOCHMANS
Âge : 44
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Communication - Médias

Informations forums :
Inscription : mai 2005
Messages : 17 616
Points : 30 961
Points : 30 961
Envoyer un message via MSN à Philippe JOCHMANS Envoyer un message via Skype™ à Philippe JOCHMANS
Bonjour

Sous Access le caractère générique c'est * et non %

Philippe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
Si vous pensez commencer sans un livre, oublier : livres pour débuter
Vous pouvez consulter mes articles sur Access et PowerPoint
Le blog Office.

Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas.
Philippe JOCHMANS est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/05/2011, 08h15   #4
Candidat au titre de Membre du Club
 
Étudiant
Inscription : octobre 2010
Messages : 67
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2010
Messages : 67
Points : 11
Points : 11
Merci de m'avoir répondu, mais cela ne fonctionne toujours pas et je désespère vraiment!
Je suis allée dans les Options < Syntaxe compatible SQL Server (ANSI 92) et je ne peux que cocher la case "Par défaut pour les nouvelles bases de données"

Et le code LIKE avec quote et * j'ai déjà essayé, ça ne fonctionne pas..
Voici mon code :
Code :
1
2
3
4
PARAMETERS [Entrez un plat] Text ( 255 );
SELECT Vins.NOM_VIN, Vins.ANNEE_VIN, Magasins.NOM_MAG, Magasins.VILLE_MAG, Regions.NOM_REGION, Magasins.PRIX_MAG
FROM Plats INNER JOIN ((Regions INNER JOIN Magasins ON Regions.N°REG = Magasins.N°REG) INNER JOIN Vins ON (Regions.N°REG = Vins.N°REG) AND (Magasins.N°Mag = Vins.N°Mag)) ON Plats.N°PLAT = Vins.N°PLAT
WHERE (((Plats.PLAT)=[Entrez un plat])) AND (Plats.PLAT) LIKE "*" & [Entrez un plat] & "*";
Sachant que j'ai une cellule dans mon champ PLAT où l'on trouve "Viande rouge, poisson"

Cordialement
fny_bnfnt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/05/2011, 08h22   #5
Candidat au titre de Membre du Club
 
Étudiant
Inscription : octobre 2010
Messages : 67
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2010
Messages : 67
Points : 11
Points : 11
Finalement en redémarrant le programme, j'ai pu activer SQL Server.
Mais j'ai tout essayé, rien ne fonctionne...
fny_bnfnt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/05/2011, 08h26   #6
Candidat au titre de Membre du Club
 
Étudiant
Inscription : octobre 2010
Messages : 67
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2010
Messages : 67
Points : 11
Points : 11
En fait CA FONCTIONNE.. c'était bidon
voici le code :
Code :
1
2
3
4
PARAMETERS [Entrez un plat] Text ( 255 );
SELECT Vins.NOM_VIN, Vins.ANNEE_VIN, Magasins.NOM_MAG, Magasins.VILLE_MAG, Regions.NOM_REGION, Magasins.PRIX_MAG, Plats.PLAT
FROM Regions INNER JOIN (Plats INNER JOIN (Magasins INNER JOIN Vins ON Magasins.N°Mag = Vins.N°Mag) ON Plats.N°PLAT = Vins.N°PLAT) ON (Regions.N°REG = Vins.N°REG) AND (Regions.N°REG = Magasins.N°REG)
WHERE (((Plats.PLAT) ALike ('%' & [Entrez un plat] & '%')));
fny_bnfnt est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h25.


 
 
 
 
Partenaires

Hébergement Web