答案 0 :(得分:0)
您有四张桌子,而您只加入了三张桌子。
您正在尝试使用themes
表中的列名,但尚未将其定义为FROM
子句。
您需要始终为n-1
表格指定n
加入条件。
添加一个连接条件,您的查询将无错执行
答案 1 :(得分:0)
这个查询怎么样:
select top 3 Package_Title, DurationInDays,Package_Image_1, Adult_Price ,
STUFF((Select themes.theme + ',' From package_theme
inner join themes on themeid = package_theme.theme
Where package_theme.package = packages.Package_ID FOR XML PATH('')),1,1,'') As theme
from packages
inner join rates on rates.package = packages.Package_ID
答案 2 :(得分:0)
我认为此查询会对您有所帮助。但我认为您可能需要更改表名,因为您的查询中也存在一些表名冲突。改进表名格式和列名。您的查询的问题是您没有加入主题表,而您正试图访问其列。
select top 3 A.Package_Title, A.DurationInDays, Package_Image_1,
B.Adult_Price,D.Theme from packages A
inner join rates B on B.Package = A.Package_ID
inner join package_theme C on C.package=A.Package_ID
inner join themes D on D.Theme_ID = C.theme