Bonjour,
J'ai un pb sur la requete suivante qui me permet de construire une vue:
La table lignes_budget possede une clé secondaire reflexive sur le champs NO_LIGNE_BUDGET_HISTO qui permet de stocker l'historique de modification des lignes de budget. Le but de la vue est de faire apparaitre pour chaque ligne si elle a été utilisée dans le cadre d'une historisation en marquant un champ à la valeur V ou F.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 SELECT L1.NO_LIGNE_BUDGET, L1.VALEUR, L1.NO_LIGNE_BUDGET_HISTO, L1.NO_BUDGET, L1.DATE_ECHEANCE, L1.TITRE_LIGNE_BUDGET, L1.DATE_CREATION, L1.COMMENTAIRE_HISTO, L1.LIB_COLLAB_CREA, L1.TYPE_LIGNE, 'F' FROM LIGNES_BUDGET L1 INNER JOIN LIGNES_BUDGET L2 on (L1.no_ligne_budget) NOT IN (L2.no_ligne_budget_histo)
Le code ci-dessus devrait donc retourner les lignes de budgets qui ne sont pas liées à une historisation.
Le probleme est le suivant, si le champ ligne_budget_histo est à NULL pour tout les enregistrements, la requete ne retourne rien, a partir d'une moment ou une des lignes a une valeur pour ce champ, la vue est créée correctement.
Je n'arrive pas à comprendre cette erreur au niveau de ma syntaxe SQL. Est ce que c'est un bug de Firebird (1.5.1) ou bien une mauvaise utilisation des champs à NULL???
Partager