[英]error 1052 im trying to join tables using inner join however i keep getting this message
[英]Getting Error 1052 When trying to join 3 tables together with inner join
我在使用內部連接將 3 個表連接在一起時遇到問題。 表格如下。
mysql> SELECT * FROM tbldvdactors;
演員 | 名稱 | 名稱 |
---|---|---|
1 | 瓦爾 | 基爾默 |
2 | 約翰尼 | 德普 |
3 | 約翰 | 克里斯 |
4 | 邁克爾 | 基頓 |
5 | 羅伊 | 沙伊德 |
mysql> SELECT * FROM tbldvdtitles;
ASIN | 標題 | 價格 |
---|---|---|
6304711905 | 墓碑 | 1.95 |
783229526 | 恐懼和厭惡在拉斯維加斯 | 8.46 |
B00005O3VC | 巨蟒與聖杯 | 8.88 |
B001CCIRG4 | 甲蟲汁 | 9.60 |
B007STBUHI | 顎 | 7.62 |
mysql> SELECT * FROM tblrelantionships;
ASIN | 演員 |
---|---|
6304711905 | 1 |
783229526 | 2 |
B0000503VC | 3 |
B001CCIRG4 | 4 |
B007STBUHI | 5 |
這是我正在使用的命令
mysql> SELECT ASIN, Title, ACTOR_ID, FName, LName, Price
-> FROM tblrelantionships
-> INNER JOIN tbldvdtitles
-> ON tblrelantionships.ASIN = tbldvdtitles.ASIN
-> INNER JOIN tbldvdactors
-> ON tblrelantionships.ACTORID = tbldvdactors.ACTORID;
ERROR 1052 (23000): Column 'ASIN' in field list is ambiguous
在此先感謝你們提供的任何幫助。
ASIN 列在多個表中定義,因此您必須明確選擇一個。
使用表別名使查詢更短,更容易閱讀恕我直言。
SELECT
tt.ASIN, tt.Title, ta.ACTOR_ID, ta.FName, ta.LName, tt.Price
FROM tblrelantionships tr
INNER JOIN tbldvdtitles tt
ON tr.ASIN = tt.ASIN
INNER JOIN tbldvdactors ta
ON tr.ACTORID = ta.ACTORID;
在第一行,您應該指定從中選擇字段 ANSI 的表。 試試這個:
mysql> SELECT tblrelantionships.ASIN, Title, ACTOR_ID, FName, LName, Price
-> FROM tblrelantionships
-> INNER JOIN tbldvdtitles
-> ON tblrelantionships.ASIN = tbldvdtitles.ASIN
-> INNER JOIN tbldvdactors
-> ON tblrelantionships.ACTORID = tbldvdactors.ACTORID;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.