Condition
pascalou83400
Messages postés
277
Date d'inscription
Statut
Membre
Dernière intervention
-
pascalou83400 Messages postés 277 Date d'inscription Statut Membre Dernière intervention -
pascalou83400 Messages postés 277 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je cale sur un code , je veux choisir un des 2 champs dans une table.
J'ai dans from and( PAAPRIORITY=1 or PAADEFAULT=1) et je veux que si le champ PAAPRIORITY n'existe pas alors on prend PAADEFAULT, mais quand j’écris
and ( PAAPRIORITY=1 or PAADEFAULT=1), j'ai les 2.
J'ai PAADEFAULT dans select.
Bon je découvre pas à pas le code que m'a fait un informaticien ...
Je vous remercie pour votre aide et explication.
Merci
Pascal
Je cale sur un code , je veux choisir un des 2 champs dans une table.
J'ai dans from and( PAAPRIORITY=1 or PAADEFAULT=1) et je veux que si le champ PAAPRIORITY n'existe pas alors on prend PAADEFAULT, mais quand j’écris
and ( PAAPRIORITY=1 or PAADEFAULT=1), j'ai les 2.
J'ai PAADEFAULT dans select.
Bon je découvre pas à pas le code que m'a fait un informaticien ...
Je vous remercie pour votre aide et explication.
Merci
Pascal
15 réponses
Bonjour,
difficile de répondre car comprendre avec si peu d'éléments....
Mets donc ta requête complète.
A+
difficile de répondre car comprendre avec si peu d'éléments....
Mets donc ta requête complète.
A+
Bonjour HDU,
Je mets la requete complete, les données proviennent d'un programme developpé sous firebird.
Les champs proviennent de la meme table.
ci-joint la requete :
Je vous remercie pour votre aide, je ne comprends pas encore la logique du code.
Bonne journée.
Pascal
Je mets la requete complete, les données proviennent d'un programme developpé sous firebird.
Les champs proviennent de la meme table.
ci-joint la requete :
SELECT STOCOMMENT as Commentaire, article.ARTNOARTICLE as Code, article.ARTSORT as Genre, case when artvariety<>'' then artspecies||' '||artvariety else artspecies end as Espece_Variete, stocriteria1.pardesignation as Etat_lot, artcriteria1.pardesignation as Diam_pot, artpresentation.pardesignation as Litrage, artcriteria3.pardesignation as Presentation, artcriteria2.pardesignation as Presentation, unvdesignation as Taille, artcriteria4.pardesignation as Diam_tete, artcriteria9.pardesignation as HT_total, DEPOT.PARDESIGNATION as Site, EMPLACEMENT.EMPDESIGNATION as Parcelle_lot, stocriteria2.pardesignation as Marquage, paaprivilegedpackage as Condition, packaging.pacdesignation as Condition, paaquantity as Qte_cond, paaqtyprivilegedpackage as Nb_cond, paaquantity*paaqtyprivilegedpackage as Qte_Roll, paaqtyprivilegedpackage2 as Nb_plt_cam, paaqtyprivilegedpackage3 as Metrage_cam, paaquantity*paaqtyprivilegedpackage*paaqtyprivilegedpackage2*paaqtyprivilegedpackage3 as Qte_plt_cam, paadefault as Cond_def, article.ARTCRITERIA19 as Code_tri, artcriteria19.pardesignation as tri, artcriteria8 as Initial_fourn, article.ARTPRICEREFMARGIN as Tarif_PR, trfcostvalue as Tarif_Palmacea, artcriteria12.pardesignation as Notre_Selection, STOBEGINDATEAVAILABLE, ARTQTEN1, ARTQTEN, STOQTYRESERVORDER, Stostockphysique, Stostockdispo FROM article article left outer join PACKAGEARTICLE on paanoarticle=artnoarticle left outer join artcost on trfnoarticle=artnoarticle left outer join supplier on cusnocustomer=artmainsupplier left outer join artpresentation on artpresentation.parcodeparam=article.artpresentation left outer join unitevente on unvcode=artsize left outer join artfamily on artfamily.parcodeparam=article.artfamilycode left outer join artcriteria5 on artcriteria5.parcodeparam=article.artcriteria5 left outer join artcriteria1 on artcriteria1.parcodeparam=article.artcriteria1 left outer join artcriteria2 on artcriteria2.parcodeparam=article.artcriteria2 left outer join artcriteria3 on artcriteria3.parcodeparam=article.artcriteria3 left outer join artcriteria9 on artcriteria9.parcodeparam=article.artcriteria9 left outer join artcriteria4 on artcriteria4.parcodeparam=article.artcriteria4 left outer join artcriteria10 on artcriteria10.parcodeparam=article.artcriteria10 left outer join artcriteria11 on artcriteria11.parcodeparam=article.artcriteria11 left outer join artcriteria6 on artcriteria6.parcodeparam=article.artcriteria6 left outer join artcriteria7 on artcriteria7.parcodeparam=article.artcriteria7 left outer join artcriteria12 on artcriteria12.parcodeparam=article.artcriteria12 left outer join artcriteria13 on artcriteria13.parcodeparam=article.artcriteria13 left outer join artcriteria19 on artcriteria19.parcodeparam=article.artcriteria19 left outer join artcriteria8 on artcriteria8.parcodeparam=article.artcriteria8 Left outer join packaging on packaging.paccodepackaging=packagearticle.paaprivilegedpackage inner join LOTSTOCK on STONOARTICLE=ARTNOARTICLE Left outer join EMPLACEMENT on EMPLACEMENT. EMPCODE=STOLOCATEMPLACEMENT left outer join STOCRITERIA1 on STOCRITERIA1.parcodeparam=LOTSTOCK.STOCRITERIA1 left outer join STOCRITERIA2 on STOCRITERIA2.parcodeparam=LOTSTOCK.STOCRITERIA2 Left outer join DEPOT on DEPOT.PARCODEPARAM=LOTSTOCK.STODEPOT where artnoarticle<>'9995' and stooutofdate<>1 and STODEPOT <>'ZZZ' and trfnocostident=3 where (PAAPRIORITY=1 or paadefault=1 ) message erreur XTX systems interbase6 ODBC Driver, Dynamic SQL Error code =- 104, token unknown line 74 column 1 where and ARTMAINSUPPLIER=20
Je vous remercie pour votre aide, je ne comprends pas encore la logique du code.
Bonne journée.
Pascal
Bonjour,
je ne connais pas Firebird, mais la fin de ta requête est étrange :
il y a 2 where.
je ne connais pas Firebird, mais la fin de ta requête est étrange :
Left outer join DEPOT on DEPOT.PARCODEPARAM=LOTSTOCK.STODEPOT where artnoarticle<>'9995' and stooutofdate<>1 and STODEPOT <>'ZZZ' and trfnocostident=3 where (PAAPRIORITY=1 or paadefault=1 )
il y a 2 where.
Le 2eme Where c'est moi qui l'ai ajouté et ca ne fonctionne pas, j'ai essayé avec and, mais la j'ai les 2 champs ?
Je ne trouve pas le bon code ?
Je continue à cogiter ...
Je ne trouve pas le bon code ?
Je continue à cogiter ...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ok,
mais en fait, je ne vois pas la limite entre la requête et le message d'erreur.
Utilises la balise <code>, on y verra peut-être un peu + clair...
A+
mais en fait, je ne vois pas la limite entre la requête et le message d'erreur.
where artnoarticle<>'9995' and stooutofdate<>1 and STODEPOT <>'ZZZ' and trfnocostident=3 where (PAAPRIORITY=1 or paadefault=1 ) message erreur XTX systems interbase6 ODBC Driver, Dynamic SQL Error code =- 104, token unknown line 74 column 1 where and ARTMAINSUPPLIER=20
Utilises la balise <code>, on y verra peut-être un peu + clair...
A+
Pour la balise <code>,
vois ici :
https://www.commentcamarche.net/infos/25911-ccm-astuces-et-conseils-pour-la-redaction/#code
vois ici :
https://www.commentcamarche.net/infos/25911-ccm-astuces-et-conseils-pour-la-redaction/#code
Bonjour HDU,
Bon j'ai essayé de comprendre à quoi correspondait le code, mais je ne comprends pas comment je peux faire un lien sur mon fichier excel.
Je suis débutant dans ce domaine, j’écris du code par déduction de ce que m'a fait l'informaticien.
Bonne journée
Bon j'ai essayé de comprendre à quoi correspondait le code, mais je ne comprends pas comment je peux faire un lien sur mon fichier excel.
Je suis débutant dans ce domaine, j’écris du code par déduction de ce que m'a fait l'informaticien.
Bonne journée
Bonjour,
Ce que tu mets dans la clause WHERE va filtrer les résultats affichés, et non modifier les colonnes fournies.
Si je comprends bien ta demande, ce que tu veux, c'est que la valeur Cond_def vale PAAPRIORITY si ça existe, ou PAADEFAULT sinon.
Pour ça, enlève tes conditions dans le WHERE, elles sont inutiles ; et remplace
par
Xavier
Ce que tu mets dans la clause WHERE va filtrer les résultats affichés, et non modifier les colonnes fournies.
Si je comprends bien ta demande, ce que tu veux, c'est que la valeur Cond_def vale PAAPRIORITY si ça existe, ou PAADEFAULT sinon.
Pour ça, enlève tes conditions dans le WHERE, elles sont inutiles ; et remplace
paadefault as Cond_def
par
ISNULL(paapriority, paadefault) as Cond_def
Xavier
Bonjour Reivax962,
Bon je m'explique mal, mais ta réponse va m'éclairer, j'ai dans une table 2 champs paapriority et paadefault, qui me renvoie chacun une info et j'ai besoin d'avoir comme retour d'info paapriority si il existe ou sinon paadefault qui existe toujours.
Donc j'en ai déduit que je demandai cela dans from comme toutes mes demandes de résultat.
Merci pour ton aide.
Pascal
Bon je m'explique mal, mais ta réponse va m'éclairer, j'ai dans une table 2 champs paapriority et paadefault, qui me renvoie chacun une info et j'ai besoin d'avoir comme retour d'info paapriority si il existe ou sinon paadefault qui existe toujours.
Donc j'en ai déduit que je demandai cela dans from comme toutes mes demandes de résultat.
Merci pour ton aide.
Pascal
Bon j'ai essayé ISNULL(paapriority, paadefault) as Cond_def dans select et dans from, ca ne fonctionne pas, message d'erreur sur isnull.
Bon je continue à chercher.
Bonne soirée.
Pascal
Bon je continue à chercher.
Bonne soirée.
Pascal
Bonjour,
ISNULL est la fonction que tu recherches, je t'assure :)
Si tu as un message d'erreur, c'est peut-être que les deux colonnes n'ont pas le même type.
Je peux t'aider si tu me donnes :
- Le message d'erreur exact ;
- La valeur que prend la colonne PAAPRIORITY quand elle n'a pas de valeur (NULL ? Chaine vide ? 0 ?)
- Le type de ces deux colonnes.
Xavier
ISNULL est la fonction que tu recherches, je t'assure :)
Si tu as un message d'erreur, c'est peut-être que les deux colonnes n'ont pas le même type.
Je peux t'aider si tu me donnes :
- Le message d'erreur exact ;
- La valeur que prend la colonne PAAPRIORITY quand elle n'a pas de valeur (NULL ? Chaine vide ? 0 ?)
- Le type de ces deux colonnes.
Xavier
Bonjour HDU,
Wahou je viens de comprendre ce que tu voulais, désolé je ne ne comprenais pas comment fonctionner "le code" je viens de trouver l'explication et l'icone pour le faire.
Je te mets le code en entier.
Wahou je viens de comprendre ce que tu voulais, désolé je ne ne comprenais pas comment fonctionner "le code" je viens de trouver l'explication et l'icone pour le faire.
Je te mets le code en entier.
SELECT STOCOMMENT as Commentaire, article.ARTNOARTICLE as Code, article.ARTSORT as Genre, case when artvariety<>'' then artspecies||' '||artvariety else artspecies end as Espece_Variete, stocriteria1.pardesignation as Etat_lot, artcriteria1.pardesignation as Diam_pot, artpresentation.pardesignation as Litrage, artcriteria3.pardesignation as Presentation, artcriteria2.pardesignation as Presentation, unvdesignation as Taille, artcriteria4.pardesignation as Diam_tete, artcriteria9.pardesignation as HT_total, DEPOT.PARDESIGNATION as Site, EMPLACEMENT.EMPDESIGNATION as Parcelle_lot, stocriteria2.pardesignation as Marquage, paaprivilegedpackage as Condition, packaging.pacdesignation as Condition, paaquantity as Qte_cond, paaqtyprivilegedpackage as Nb_cond, paaquantity*paaqtyprivilegedpackage as Qte_Roll, paaqtyprivilegedpackage2 as Nb_plt_cam, paaqtyprivilegedpackage3 as Metrage_cam, paaquantity*paaqtyprivilegedpackage*paaqtyprivilegedpackage2*paaqtyprivilegedpackage3 as Qte_plt_cam, paadefault as Cond_def, article.ARTCRITERIA19 as Code_tri, artcriteria19.pardesignation as tri, artcriteria8 as Initial_fourn, article.ARTPRICEREFMARGIN as Tarif_PR, trfcostvalue as Tarif_Palmacea, artcriteria12.pardesignation as Notre_Selection, STOBEGINDATEAVAILABLE, ARTQTEN1, ARTQTEN, STOQTYRESERVORDER, Stostockphysique, Stostockdispo FROM article article left outer join PACKAGEARTICLE on paanoarticle=artnoarticle left outer join artcost on trfnoarticle=artnoarticle left outer join supplier on cusnocustomer=artmainsupplier left outer join artpresentation on artpresentation.parcodeparam=article.artpresentation left outer join unitevente on unvcode=artsize left outer join artfamily on artfamily.parcodeparam=article.artfamilycode left outer join artcriteria5 on artcriteria5.parcodeparam=article.artcriteria5 left outer join artcriteria1 on artcriteria1.parcodeparam=article.artcriteria1 left outer join artcriteria2 on artcriteria2.parcodeparam=article.artcriteria2 left outer join artcriteria3 on artcriteria3.parcodeparam=article.artcriteria3 left outer join artcriteria9 on artcriteria9.parcodeparam=article.artcriteria9 left outer join artcriteria4 on artcriteria4.parcodeparam=article.artcriteria4 left outer join artcriteria10 on artcriteria10.parcodeparam=article.artcriteria10 left outer join artcriteria11 on artcriteria11.parcodeparam=article.artcriteria11 left outer join artcriteria6 on artcriteria6.parcodeparam=article.artcriteria6 left outer join artcriteria7 on artcriteria7.parcodeparam=article.artcriteria7 left outer join artcriteria12 on artcriteria12.parcodeparam=article.artcriteria12 left outer join artcriteria13 on artcriteria13.parcodeparam=article.artcriteria13 left outer join artcriteria19 on artcriteria19.parcodeparam=article.artcriteria19 left outer join artcriteria8 on artcriteria8.parcodeparam=article.artcriteria8 Left outer join packaging on packaging.paccodepackaging=packagearticle.paaprivilegedpackage inner join LOTSTOCK on STONOARTICLE=ARTNOARTICLE Left outer join EMPLACEMENT on EMPLACEMENT. EMPCODE=STOLOCATEMPLACEMENT left outer join STOCRITERIA1 on STOCRITERIA1.parcodeparam=LOTSTOCK.STOCRITERIA1 left outer join STOCRITERIA2 on STOCRITERIA2.parcodeparam=LOTSTOCK.STOCRITERIA2 Left outer join DEPOT on DEPOT.PARCODEPARAM=LOTSTOCK.STODEPOT where artnoarticle<>'9995' " j'ai essayé and et j'ai les 2 infos et where plante, Reivax962 m'a proposé isnull et il plante aussi (PAAPRIORITY=1 or paadefault=1 ) and stooutofdate<>1 and STODEPOT <>'ZZZ' and trfnocostident=3 and ARTMAINSUPPLIER=20
SELECT STOCOMMENT as Commentaire, article.ARTNOARTICLE as Code, article.ARTSORT as Genre, case when artvariety<>'' then artspecies||' '||artvariety else artspecies end as Espece_Variete, stocriteria1.pardesignation as Etat_lot, artcriteria1.pardesignation as Diam_pot, artpresentation.pardesignation as Litrage, artcriteria3.pardesignation as Presentation, artcriteria2.pardesignation as Presentation, unvdesignation as Taille, artcriteria4.pardesignation as Diam_tete, artcriteria9.pardesignation as HT_total, DEPOT.PARDESIGNATION as Site, EMPLACEMENT.EMPDESIGNATION as Parcelle_lot, stocriteria2.pardesignation as Marquage, paaprivilegedpackage as Condition, packaging.pacdesignation as Condition, paaquantity as Qte_cond, paaqtyprivilegedpackage as Nb_cond, paaquantity*paaqtyprivilegedpackage as Qte_Roll, paaqtyprivilegedpackage2 as Nb_plt_cam, paaqtyprivilegedpackage3 as Metrage_cam, paaquantity*paaqtyprivilegedpackage*paaqtyprivilegedpackage2*paaqtyprivilegedpackage3 as Qte_plt_cam, paadefault as Cond_def, article.ARTCRITERIA19 as Code_tri, artcriteria19.pardesignation as tri, artcriteria8 as Initial_fourn, article.ARTPRICEREFMARGIN as Tarif_PR, trfcostvalue as Tarif_Palmacea, artcriteria12.pardesignation as Notre_Selection, STOBEGINDATEAVAILABLE, ARTQTEN1, ARTQTEN, STOQTYRESERVORDER, Stostockphysique, Stostockdispo FROM article article left outer join PACKAGEARTICLE on paanoarticle=artnoarticle left outer join artcost on trfnoarticle=artnoarticle left outer join supplier on cusnocustomer=artmainsupplier left outer join artpresentation on artpresentation.parcodeparam=article.artpresentation left outer join unitevente on unvcode=artsize left outer join artfamily on artfamily.parcodeparam=article.artfamilycode left outer join artcriteria5 on artcriteria5.parcodeparam=article.artcriteria5 left outer join artcriteria1 on artcriteria1.parcodeparam=article.artcriteria1 left outer join artcriteria2 on artcriteria2.parcodeparam=article.artcriteria2 left outer join artcriteria3 on artcriteria3.parcodeparam=article.artcriteria3 left outer join artcriteria9 on artcriteria9.parcodeparam=article.artcriteria9 left outer join artcriteria4 on artcriteria4.parcodeparam=article.artcriteria4 left outer join artcriteria10 on artcriteria10.parcodeparam=article.artcriteria10 left outer join artcriteria11 on artcriteria11.parcodeparam=article.artcriteria11 left outer join artcriteria6 on artcriteria6.parcodeparam=article.artcriteria6 left outer join artcriteria7 on artcriteria7.parcodeparam=article.artcriteria7 left outer join artcriteria12 on artcriteria12.parcodeparam=article.artcriteria12 left outer join artcriteria13 on artcriteria13.parcodeparam=article.artcriteria13 left outer join artcriteria19 on artcriteria19.parcodeparam=article.artcriteria19 left outer join artcriteria8 on artcriteria8.parcodeparam=article.artcriteria8 Left outer join packaging on packaging.paccodepackaging=packagearticle.paaprivilegedpackage inner join LOTSTOCK on STONOARTICLE=ARTNOARTICLE Left outer join EMPLACEMENT on EMPLACEMENT. EMPCODE=STOLOCATEMPLACEMENT left outer join STOCRITERIA1 on STOCRITERIA1.parcodeparam=LOTSTOCK.STOCRITERIA1 left outer join STOCRITERIA2 on STOCRITERIA2.parcodeparam=LOTSTOCK.STOCRITERIA2 Left outer join DEPOT on DEPOT.PARCODEPARAM=LOTSTOCK.STODEPOT where artnoarticle<>'9995' and PAAPRIORITY=1 and stooutofdate<>1 and STODEPOT <>'ZZZ' and trfnocostident=3 and ARTMAINSUPPLIER=20
Bonjour à tous,
Et bien je ne trouve pas ma solution, j'ai fait x essai de code et pas moyen de trouver le bon.
Sos si quelqu'un a une solution pour moi.
Merci.
Pascal
Et bien je ne trouve pas ma solution, j'ai fait x essai de code et pas moyen de trouver le bon.
Sos si quelqu'un a une solution pour moi.
Merci.
Pascal
Tu n'as pas dû voir ma réponse :
Bonjour,
ISNULL est la fonction que tu recherches, je t'assure :)
Si tu as un message d'erreur, c'est peut-être que les deux colonnes n'ont pas le même type.
Je peux t'aider si tu me donnes :
- Le message d'erreur exact ;
- La valeur que prend la colonne PAAPRIORITY quand elle n'a pas de valeur (NULL ? Chaine vide ? 0 ?)
- Le type de ces deux colonnes.
Xavier
Bonjour,
ISNULL est la fonction que tu recherches, je t'assure :)
Si tu as un message d'erreur, c'est peut-être que les deux colonnes n'ont pas le même type.
Je peux t'aider si tu me donnes :
- Le message d'erreur exact ;
- La valeur que prend la colonne PAAPRIORITY quand elle n'a pas de valeur (NULL ? Chaine vide ? 0 ?)
- Le type de ces deux colonnes.
Xavier
Bonjour XAVIER,
Ok je comprends mieux, j'ai regardé et effectivement paapriority=1 et paadefault = null, mais si j'ai bien compris ce que tu me donnes comme code :
ISNULL(paapriority, paadefault) as Cond_def, je le mets dans select, mais je mets quoi en from pour avoir le résultat de l'un ou l'autre.
Merci pour ton aide.
Bonne soirée
Ok je comprends mieux, j'ai regardé et effectivement paapriority=1 et paadefault = null, mais si j'ai bien compris ce que tu me donnes comme code :
ISNULL(paapriority, paadefault) as Cond_def, je le mets dans select, mais je mets quoi en from pour avoir le résultat de l'un ou l'autre.
Merci pour ton aide.
Bonne soirée