Bonjour,

Les personnes m'ayant aidé hier sur un autre sujet vont être contente de voir que je suis leurs conseils.

Jusqu'à lors je faisais des jointures avec dans les WHERE, ca fonctionne très bien, mais dans un soucis de lisibilité et d'apprentissage de nouvelles choses je m'essaie aux jointures avec JOIN.

Effectivement c'est plus lisible. La jointure entre 2 tables fonctionne parfaitement tout va bien. Mais dès que j'essaie de mettre une 3eme table, la rien ne va plus.

Je m'explique :
J'ai 3 tables :

BASEC(reference, indice)
BASEC1(ID_base, #reference, #NoOF, datecontrole, initiales)
BASEC2(NoOF, #reference, valeur)

Pour la jointure entre 2 tables BASEC et BASEC1 tout va bien ca fonctionne :

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 DISTINCT 
	max(BASEC1.DateControle), 
	BASEC.reference, 
	BASEC.indice, 
	BASEC1.Initiales
 
FROM
	BASEC
	JOIN BASEC1
	ON BASEC.reference=BASEC1.reference			
GROUP BY
	BASEC.refart, 
	BASEC.indice, 
	BASEC1.Initiales
Mais dès que BASEC2 fait son entrée c'est erreur sur erreur :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
SELECT DISTINCT 
	max(BASEC1.DateControle), 
	BASEC.reference, 
	BASEC.indice, 
	BASEC1.Initiales,
              BASEC2.NoOF
 
FROM
	BASEC
	JOIN BASEC1
	ON BASEC.reference=BASEC1.reference
              JOIN BASEC2
	ON BASEC1.NoOF=BASEC2.NoOF		
GROUP BY
	BASEC.refart, 
	BASEC.indice, 
	BASEC1.Initiales,
              BASEC2.NoOF
L'erreur indiquée est :
Incorrect syntax near 'BASEC2'.

J'ai bien compris que ma synthaxe ne doit pas être la bonne. J'ai lu divers forums et tutos depuis hier, et je ne vois pas où cela cloche.

Pouvez vous m'aidez et m'indiquer mes erreurs s'il vous plait.

Cordialement.


M4itreG.