PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV 2024 → Syntaxe sql Where in !!
Syntaxe sql Where in !!
Started by joel, Aug., 24 2004 5:13 PM - 3 replies
Posted on August, 24 2004 - 5:13 PM
Bonjour
J'exécute la requete ci dessous en utilisant une liste de magasins dans le
paramètre cListeMag ex "001;005;010"
Quelque soit ce que j'envoie "hexecuterequete" me retourne la totalité du
fichier. (idem avec rc ou tab comme séparateur)

Ou est l'érreur ? Quelle est la bonne syntaxe ???
Merci de vos reponses.


SELECT SUM(PREPAVTE.PVTE*1/PREPAVTE.TVAVTE) AS rCAnet,
SUM(PREPAVTE.QTE) AS nQTEArticle,
PREPAVTE.CODEFOUR AS cCodeFour

FROM PREPAVTE
WHERE PREPAVTE.MAG IN ( {cListeMag} )
GROUP BY PREPAVTE.CODEFOUR
ORDER BY rCAnet DESC
Posted on August, 24 2004 - 10:08 PM
"JG" <joel@aquitem.fr> wrote:


Bonjour
J'exécute la requete ci dessous en utilisant une liste de magasins dans

le
paramètre cListeMag ex "001;005;010"
Quelque soit ce que j'envoie "hexecuterequete" me retourne la totalité du
fichier. (idem avec rc ou tab comme séparateur)

Ou est l'érreur ? Quelle est la bonne syntaxe ???
Merci de vos reponses.


SELECT SUM(PREPAVTE.PVTE*1/PREPAVTE.TVAVTE) AS rCAnet,
SUM(PREPAVTE.QTE) AS nQTEArticle,
PREPAVTE.CODEFOUR AS cCodeFour

FROM PREPAVTE
WHERE PREPAVTE.MAG IN ( {cListeMag} )
GROUP BY PREPAVTE.CODEFOUR
ORDER BY rCAnet DESC


Vous ne dites pas quelle est le type de base de données mais la syntaxe SQL
standard du IN est
WHERE fichier.rubrique IN ('Val1', 'Val2', 'Val3') pour du alphanumérique
et
WHERE fichier.rubrique IN (Val1, Val2, Val3) pour du numérique.
Le séparateur est la virgule.

J'espère avoir pu vous aider un peu.

Christian Potvin
Beaulieu Canada
Posted on August, 25 2004 - 2:10 AM
"JG" <joel@aquitem.fr> wrote:


Bonjour
J'exécute la requete ci dessous en utilisant une liste de magasins dans

le
paramètre cListeMag ex "001;005;010"
Quelque soit ce que j'envoie "hexecuterequete" me retourne la totalité du
fichier. (idem avec rc ou tab comme séparateur)

Ou est l'érreur ? Quelle est la bonne syntaxe ???
Merci de vos reponses.


SELECT SUM(PREPAVTE.PVTE*1/PREPAVTE.TVAVTE) AS rCAnet,
SUM(PREPAVTE.QTE) AS nQTEArticle,
PREPAVTE.CODEFOUR AS cCodeFour

FROM PREPAVTE
WHERE PREPAVTE.MAG IN ( {cListeMag} )
GROUP BY PREPAVTE.CODEFOUR
ORDER BY rCAnet DESC


essaie de mettre les elts entre cotes : in('001','002')
pbs
Posted on August, 29 2004 - 11:28 AM
Bonjour,

Je n'utilise pas la clause IN, mais je te propose le code suivant:
FROM PREPAVTE
WHERE PREPAVTE.MAG IN ( cListeMag ) // sans les {} avec cListeMag ex

"'001';'005';'010'" car c'est de l'alpha

JMS

GROUP BY PREPAVTE.CODEFOUR
ORDER BY rCAnet DESC



"JG" <joel@aquitem.fr> a écrit dans le message de
news:412b3f0c$1@news.pcsoft.fr...


Bonjour
J'exécute la requete ci dessous en utilisant une liste de magasins dans le
paramètre cListeMag ex "001;005;010"
Quelque soit ce que j'envoie "hexecuterequete" me retourne la totalité du
fichier. (idem avec rc ou tab comme séparateur)

Ou est l'érreur ? Quelle est la bonne syntaxe ???
Merci de vos reponses.


SELECT SUM(PREPAVTE.PVTE*1/PREPAVTE.TVAVTE) AS rCAnet,
SUM(PREPAVTE.QTE) AS nQTEArticle,
PREPAVTE.CODEFOUR AS cCodeFour

FROM PREPAVTE
WHERE PREPAVTE.MAG IN ( {cListeMag} )
GROUP BY PREPAVTE.CODEFOUR
ORDER BY rCAnet DESC