PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Jointure externe avec hexécuterequête
Jointure externe avec hexécuterequête
Débuté par emmanuel.moyse, 10 nov. 2005 11:07 - 2 réponses
Posté le 10 novembre 2005 - 11:07
Bonjour.
Je travaille avec une base Oracle et j'ai une table de candidats avec une clé étrangère pointant sur une table des types de candidature. Le type de candidature est facultatif.
Je souhaite récupérer tous mes candidats (même ceux qui n'ont pas de type).
Windev me génère la requête suivante :

SELECT C_INSCRIPT.IN_NOM,
C_INSCRIPT.IN_PRENOM,
C_INSCRIPT.IN_SEXE,
C_INSCRIPT.IN_DDN,
C_TYPE_CAND.TCA_LIBELLE
FROM C_INSCRIPT,C_TYPE_CAND
WHERE C_INSCRIPT.IDC_TYPE_CAND=C_TYPE_CAND.IDC_TYPE_CAND(+)

Problème : à l'exécution de la requête par Hexécuterequête, seuls les candidats avec une valeur de clé étrangère "type de candidature" non nulle sont ramenés.
Hors, si je "jou" cette requête par WDSQL, tous les candidats sont récupérés !!! Quelqu'un a t'il une idée de l'origine du problème ?
Posté le 10 novembre 2005 - 12:07
salut

tout dépend déjà de la version d'Oracle et si tu passes par accès natif ou pas
car le (+) n'est peut-être pas supporté : utiliser alors LEFT ou RIGHT OUTER JOIN
Posté le 11 novembre 2005 - 16:59
Essayer:
SELECT C_INSCRIPT.IN_NOM,
C_INSCRIPT.IN_PRENOM,
C_INSCRIPT.IN_SEXE,
C_INSCRIPT.IN_DDN,
C_TYPE_CAND.TCA_LIBELLE
FROM C_INSCRIPT LEFT OUTER JOIN C_TYPE_CAND ON (C_INSCRIPT.IDC_TYPE_CAND=C_TYPE_CAND.IDC_TYPE_CAND)