SQL : JOIN ... ON ... IS NOT NUL

Résolu/Fermé
DAG - 13 août 2008 à 10:11
 DAG - 13 août 2008 à 10:23
Bonjour,
Je souhaiterais tester dans une requête SQL si un champs est vide ou pas. J'ai écris cette requête :

SELECT table1.champs1, table1.champs2, table1.champs3, table2.champs1, table2.champs2, table2.champs3
FROM
 table2
INNER JOIN 
table1 
ON
 (
      table1.champs1 = table2.champs1
      AND 
       table1.champs2 IS NOT NULL
      AND 
      table1.champs3 IS NOT NULL
); 


Mais il me sort quand même les champs vide ou j'ai mis IS NOT NULL dans ma requête.
Ma requête est-elle bien formée ?
Comment faire pour réaliser ce que je veux ?
A voir également:

2 réponses

sandul Messages postés 3924 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 8 octobre 2010 723
13 août 2008 à 10:15
Salut,

Sors le test IS NULL à l'extérieur de ton join:
SELECT table1.champs1, table1.champs2, table1.champs3, table2.champs1, table2.champs2, table2.champs3
FROM
 table2
INNER JOIN table1 
ON table1.champs1 = table2.champs1
WHERE table1.champs2 IS NOT NULL AND table1.champs3 IS NOT NULL;


++
0
Merci beaucoup, ça marche !

A+
0