Ralat 1066: Jadual Pendua/Alias 'Pengguna'
Apabila melaksanakan pertanyaan SQL, anda mungkin menghadapi ralat 1066 (Bukan jadual unik/ alias: 'pengguna'). Ralat ini menunjukkan bahawa jadual 'pengguna' dalam pertanyaan anda dirujuk beberapa kali tanpa alias yang berbeza.
Masalah:
Pertimbangkan struktur jadual berikut:
Article Section Category User id | title id | title id | title id | name ------------ ------------ ------------ ------------ 1 | Article 1 10 | Section 1 100 | Category 1 1 | Author
Dan pertanyaan SQL ini:
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'
Apabila melaksanakan pertanyaan ini, anda akan mendapat ralat 1066 kerana jadual 'pengguna' dicantumkan dua kali tanpa menyatakan alias yang berbeza.
Penyelesaian:
Untuk menyelesaikan isu ini, tetapkan alias unik kepada contoh kedua jadual 'pengguna', seperti 'u2':
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'
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat MySQL 1066: Jadual Pendua/Alias 'pengguna'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!