Bonjour

Voilà une requête LEFT JOIN qui ne fonctionne pas comme je l'attend
Code : Sélectionner tout - Visualiser dans une fenêtre à part
SELECT DISTINCT dd.* , s.nom FROM dossierdet as dd  LEFT JOIN societe as s on fk_soc = s.rowid WHERE  fk_dossier =6
Est-ce que je me trompe?
La table société est la table de référence des tiers.
Dans la table dossierdet , chaque élément a un tiers (dans fk_soc) , référencé dans la table société (s.rowid) .
Je voudrais que cette requête affiche tous les éléments de dossierdet et les noms des tiers quand une valeur est dans fk_soc

Or cette requête ne me présente pas les éléments de dossierdet dont fk_soc est à 0 ou à Null.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
J'ai bien une solution
SELECT DISTINCT dd.* , s.nom FROM dossierdet as dd  , societe as s WHERE  fk_dossier =6 and on fk_soc = s.rowid 
union
SELECT DISTINCT dd.* , '' FROM dossierdet as dd  WHERE  fk_dossier =6 and (fk_soc = 0 or isnull(fk_soc))
Mais est-ce la seule façon?

Claude