我有3张桌子
Item, Primary, Secondary
我希望它返回All columns
项目和Brandname
来自主要和Size, Color
来自中学
ItemID - pk(item) ItemID - fk(小学) ItemID - fk(中学)
我知道如何做2张桌子,但我遇到了如何做3张桌子的问题
这是我的代码
From Item, Primary, Secondary
Where Item.ItemID=Primary.ItemID AND Item.ItemID=Secondary.ItemID
有人可以指出我的错误
注意主要是蓝色这是来自访问的保留字吗?
答案 0 :(得分:2)
由于primary是保留字,因此用括号[]
包围primary字样[编辑解释评论] 使用@janet编写的查询,尝试在项目表之前添加一个打开的paren,在第二个内部联接之前添加一个关闭的paren。
SELECT a.*, b.Brandname, c.Size, c.Color
FROM (Item a
INNER JOIN [Primary] b ON a.ItemID = b.ItemID)
INNER JOIN [Secondary] c ON b.ItemID = c.ItemID
答案 1 :(得分:1)
试试这个:
From Item
JOIN [Primary] ON Item.ItemID=[Primary].ItemID
JOIN [Secondary] ON Item.ItemID=[Secondary].ItemID
答案 2 :(得分:0)
您可以使用此查询
SELECT a.*, b.Brandname, c.Size, c.Color
FROM Item a
INNER JOIN Primary b ON a.ItemID = b.ItemID
INNER JOIN Secondary c ON b.ItemID = c.ItemID
a,b和c是查询中表的别名。 a。*将返回Items表中的所有列。
答案 3 :(得分:0)
你应该试试
SELECT Item.*, Primary.Brandname, Secondary.Size, Secondary.Color
FROM Item
inner join Primary ON a.primary_id = Primary.id
inner join Secondary ON Primary.secondary_id = Secondary.id