| 1054 - colonne 'a.c' inconnue dans 'en clause' Celà peut arriver si vous faites quelque chose comme : SELECTIONNER * A PARTIR DE a, b LAISSE REJOINDRE c SUR a.d = c.e; ...ce qui l'air dêtre, d'un point de vue extérieure, parfait. Mais c'est un SQL invalide ; dans les versions antérieures de MySQL, des bugs (4.x) avaient pour effet de le décomposer comme ci-dessus et de lui donner la'pparence de fonctionner correctement, mais la norme SQL dit que celà doit être lu : SELECTIONNER * A PARTIR DE a, b LAISSE REJOINDRE c SUR a.d = c.e; ...et vous verrez que le LAISSE REJOINDRE n'a plus aucun sens. Alors, pour réparer votre SQL, vous devez soit déplacer l'affimation REJOINDRE de façon à ce qu'elle soit située entre les deux tables qu'elle rejoint: SELECTIONNER * A PARTIR DE a LAISSE REJOINDRE c SUR a.d = c.e, b; ...ou bien groupez explicitement comme ((a,b),c) au lieu de (a,(b,c)): SELECTIONNER * A PARTIR DE (a, b) LAISSE REJOINDRE c SUR a.d = c.e; |