Depuis que je suis le même type d'erreur expliqué en beaucoup d'autres stackoverflow questions:alias paramètre pour chaque table dérivée dans une base MySQL
MySQLSyntaxErrorException: Chaque table dérivée doit avoir son propre alias
Après avoir lu attentivement il comprend chaque question en double (comme this one par exemple), j'ai essayé d'assigner à chaque table dérivée un alias spécifique.
Ceci est mon exemple requête:
SELECT pl.*, p.cat_1, pb.id
FROM table_1 AS pl
JOIN table_2 AS p ON p.id=pl.column_id
JOIN table_3 AS pb ON pb.id=p.id
JOIN table_4 AS u ON u.id=pl.user_id
WHERE pl.value_1=2 AND pl.value_2 > 0
ORDER BY id desc
Probablement que je fais quelque chose de mal, cela est peut-être pas la meilleure façon d'écrire la requête? Je ne sais pas, mais sans aucune suggestion, je ne peux pas comprendre quel est le problème, aussi parce que la requête dans le béton fonctionne bien si elle est exécutée.
Des suggestions?
Retirez AS dans l'alias utilisent également alias dans l'ordre par la clause –
ORDER BY id desc nom de la table d'alias d'utilisation par exemple id comme ORDER BY pb.id desc – JYoThI
Votre requête n'a pas de table dérivée. Par conséquent, cette requête ne générerait pas cette erreur. –