DBAtlas · Veritabanı operasyon atlası

1052: Column 'x' in field list is ambiguous

MySQL

Ne demek?

Sorguda birden fazla tabloda aynı ada sahip bir sütun bulunuyor ve bu sütun tablo/alias öneki olmadan kullanıldığından MySQL hangi tabloya ait olduğunu belirleyemiyor.

Neden olur?

JOIN edilen iki tabloda da aynı isimli sütun olması (örn. her ikisinde de id); SELECT, WHERE, ON, GROUP BY ya da ORDER BY'da sütunun niteliksiz (öneksiz) yazılması.

Nasıl çözülür?

Belirsiz her sütunu tablo adı ya da alias ile nitelendirin: SELECT a.id, b.id FROM a JOIN b ON a.id = b.a_id; Tablolara kısa alias verip tüm çakışan sütunlara önek ekleyin. USING(sutun) ile ortak sütunlu join'lerde belirsizliği azaltın.

DBAtlas'ta aç →

Aynı motorda diğer kayıtlar