Maison >base de données >tutoriel mysql >Comment résoudre l'erreur SQL 1066 : alias de table non uniques dans les JOIN ?

Comment résoudre l'erreur SQL 1066 : alias de table non uniques dans les JOIN ?

Patricia Arquette
Patricia Arquetteoriginal
2025-01-02 21:07:39607parcourir

How to Solve SQL Error 1066: Non-Unique Table Aliases in JOINs?

Erreur SQL 1066 : Dépannage des alias de table non uniques dans les requêtes JOIN

Lorsque vous rencontrez l'erreur SQL 1066, "Table/alias non unique, " cela indique que plusieurs occurrences de la même table sont utilisées sans alias unique pour les différencier dans un JOIN requête.

Considérez l'exemple de code suivant :

SELECT article.* , section.title, category.title, user.name, user.name
FROM article
INNER JOIN section ON article.section_id = section.id
INNER JOIN category ON article.category_id = category.id
INNER JOIN user ON article.author_id = user.id
LEFT JOIN user ON article.modified_by = user.id
WHERE article.id = '1'

Dans ce code, vous remarquerez que la table "user" est jointe deux fois, provoquant l'erreur. Pour résoudre ce problème, vous devez donner un alias unique à la deuxième occurrence de la table.

Le code suivant illustre la requête corrigée :

SELECT article.* , section.title, category.title, user.name, u2.name 
FROM article 
INNER JOIN section ON article.section_id = section.id 
INNER JOIN category ON article.category_id = category.id 
INNER JOIN user ON article.author_id = user.id 
LEFT JOIN user u2 ON article.modified_by = u2.id 
WHERE article.id = '1'

En fournissant l'alias unique "u2 " à la deuxième occurrence de la table "user", l'erreur est résolue et vous pouvez exécuter avec succès la requête.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn