Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
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 26/08/2005, 13h42   #1
Invité de passage
 
Inscription : juillet 2005
Messages : 12
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 12
Points : 4
Points : 4
Par défaut Opérateur Like

Je n'arrive pas à trouver la synatxe correcte pour l'opérateur like avec une variable cf:
"CITY_name" like $1% ;
Ceci ne fonctionne pas...
help me plz!
clems34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2005, 13h47   #2
Expert Confirmé
 
Avatar de KiLVaiDeN
 
Inscription : octobre 2003
Messages : 2 714
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 2 714
Points : 2 689
Points : 2 689
Essaies:

Code :
1
2
3
"CTI_Name" LIKE '$1%'
ou
CTI_Name LIKE '$1%'
__________________
K
KiLVaiDeN est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2005, 13h59   #3
Invité de passage
 
Inscription : juillet 2005
Messages : 12
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 12
Points : 4
Points : 4
ça ne marche pas,en faisant ça je pense que la variable $1 n'est plus prise en compte.
clems34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2005, 14h04   #4
Expert Confirmé
 
Avatar de KiLVaiDeN
 
Inscription : octobre 2003
Messages : 2 714
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 2 714
Points : 2 689
Points : 2 689
$1 c'est en quel langage ? PL/pgSQL ?
__________________
K
KiLVaiDeN est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2005, 15h36   #5
Invité de passage
 
Inscription : juillet 2005
Messages : 12
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 12
Points : 4
Points : 4
Oui mais aussi en sql dans une fonction toute simple lorsque l'on utilise une variable:
CREATE OR REPLACE FUNCTION searchville("varchar")
RETURNS SETOF "City" AS
'
SELECT * FROM "City" WHERE "CITY_name" like '$1%';
'
LANGUAGE 'sql' VOLATILE;

Les guillemets pour CITY_name sont obligatoires lorsque l'on a des majuscules dans les noms de champs ou de table.
Ya peut etre une feinte en concatenant la variable avec le % mais je n'en suis pas sur dutout.
clems34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2005, 15h38   #6
Expert Confirmé
 
Avatar de KiLVaiDeN
 
Inscription : octobre 2003
Messages : 2 714
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 2 714
Points : 2 689
Points : 2 689
Ok je vois

Oui peut-être avec un "CMT_Champ" like $1|'%'

PS : si j'étais toi j'essaierais déjà de faire fonctionner sans la variable, et après avec la variable, car j'ai l'impression que tu as déjà des simples quotes en délimiteurs après le AS ' non ? Il faudra peut-être échapper les quotes avec deux quotes ''
__________________
K
KiLVaiDeN est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2005, 15h49   #7
Invité de passage
 
Inscription : juillet 2005
Messages : 12
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 12
Points : 4
Points : 4
tout marche sans la variable j'en suis à la 100ème procédure stockées sur cette appli alors oui je peux confirmer que les quotes ne posent pas de problçèmes lol.
Je teste ta solution...
clems34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2005, 15h53   #8
Invité de passage
 
Inscription : juillet 2005
Messages : 12
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 12
Points : 4
Points : 4
ça ne marche pas non plus avec l'opérateur | .
Suis-je le seul à avoir eut ce problème?
clems34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2005, 15h58   #9
Expert Confirmé
 
Avatar de KiLVaiDeN
 
Inscription : octobre 2003
Messages : 2 714
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 2 714
Points : 2 689
Points : 2 689
Oops c'est deux || pas un seul |.
__________________
K
KiLVaiDeN est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2005, 16h18   #10
Invité de passage
 
Inscription : juillet 2005
Messages : 12
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 12
Points : 4
Points : 4
Eh bien je te remercie grandement! ça marche nikel!
clems34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/08/2005, 16h22   #11
Expert Confirmé
 
Avatar de KiLVaiDeN
 
Inscription : octobre 2003
Messages : 2 714
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 2 714
Points : 2 689
Points : 2 689
Cool
__________________
K
KiLVaiDeN 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 07h16.


 
 
 
 
Partenaires

Hébergement Web