【发布时间】:2014-07-15 13:12:42
【问题描述】:
我在使用 Microsoft SQL 2012 Server Management Studio 时遇到了 Transact-SQL 中的“列名不明确”问题。
我一直在查看一些已在 Stackoverflow 上发布的答案,但它们似乎对我不起作用,其中的一部分我根本不理解或失去了一般看法。
执行以下脚本:
USE CDD
SELECT Artist, Album_title, track_title, track_number, Release_Year, EAN_code
FROM Artists AS a INNER JOIN CD_Albumtitles AS c
ON a.artist_id = c.artist_id
INNER JOIN Track_lists AS t
ON c.title_id = t.title_id
WHERE track_title = 'bohemian rhapsody'
触发以下错误消息:
消息 209,第 16 级,状态 1,第 3 行 不明确的列名“EAN_code”。
这并不是一个包含艺术家姓名、专辑名称和曲目列表的 CD 数据库。表“CD_Albumtitles”和“Track_lists”都有一个列,具有相同的 EAN 代码。 EAN 代码是一个重要的国际代码,用于唯一标识 CD 专辑,这就是我想继续使用它的原因。
【问题讨论】:
-
似乎
EAN_code存在于两个表中。只需指定您需要从哪个表中选择该列。即a.EAN_code
标签: tsql