【发布时间】:2010-03-27 22:16:11
【问题描述】:
我有以下 SQL:
SELECT *
FROM [Database].dbo.[TagsPerItem]
INNER JOIN [Database].dbo.[Tag] ON [Tag].Id = [TagsPerItem].TagId
WHERE [Tag].Name IN ('home', 'car')
然后它返回:
Id TagId ItemId ItemTable Id Name SiteId
------------------------------------------
1 1 1 Content 1 home 1
2 1 2 Content 1 home 1
3 1 3 Content 1 home 1
4 2 4 Content 2 car 1
5 2 5 Content 2 car 1
6 2 12 Content 2 car 1
而不仅仅是两个记录,它们的名称是“home”和“car”。我该如何解决?
谢谢。
【问题讨论】:
-
展示并解释数据库结构!为什么您期望该 JOIN 中只有两行??
-
您到底期待什么结果?您是否要获取所有标记为 home 和 car 的物品?在您的示例中,没有任何项目被标记为两者。
标签: sql sql-server inner-join