problème avec select imbriqué (sur AS400)

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : problème avec select imbriqué (sur AS400)

Problème avec select imbriqué (AS400)

par Invité » 22 mars 2006, 12:49

our résoudre votre problème , il vaudrait mieux ecrire la requête comme suit :

C+ SELECT ( '2000' CONCAT ';' CONCAT
C+ Char(
C+ (Select IFNULL(VALEURNUM, '') from PFTABLE where
C+ RECTYPE = '20000' and CHAMP = 'ZZ025'
C+ and CUSTID = obj.code))
C+ ) as ENREG
C+ FROM PFNOBJ obj,

ou l'écrire pour plus de lisibilité comme

C+ SELECT ( '2000' CONCAT ';' CONCAT
C+ Char(IFNULL(VALEURNUM, '') ) as ENREG
C+ FROM PFNOBJ obj
C+ Left join from PFTABLE on RECTYPE = '20000' and CHAMP = 'ZZ025'
C+ and CUSTID = obj.code

problème avec select imbriqué (sur AS400)

par Invité » 22 févr. 2006, 19:27

Bonjour,
Le SQL (simplifié) ci-dessous ne génére rien à cause du SELECT imbriqué:

C+ SELECT ( '2000' CONCAT ';' CONCAT
C+ Char(
C+ (Select VALEURNUM from PFTABLE where
C+ RECTYPE = '20000' and CHAMP = 'ZZ025'
C+ and CUSTID = obj.code))
C+ ) as ENREG
C+ FROM PFNOBJ obj,

Si tout les obj.code sont trouvé dans le fichier PFTABLE, le SQL fonctionne bien.
Mais des qu'un obj.code n'est pas trouvé dans PFTABLE le SQL ne génére rien (le fichier en sortie est vide)
je voudrai que, même si il ne trouve pas l'equivalence dans PFTABLE, qu'il me crée les enregistrement et avec la zone concerné vide.
merci pour votre aide.
marchepied