我有两个表叫mp_Blogs
和mp_BlogCategories
SQL:连接两个表
mp_blog
具有列和值
ItemID ModuleID
3 11
4 11
5 13
mp_BlogCategories
具有柱和值
CategoryID ModuleID
1 11
2 11
3 13
我需要这样的输出
ItemID CategoryID
3 1
4 2
5 3
我用这个查询
SELECT a.[ItemID],b.[CategoryID]
from [mp_Blogs] a
join [mp_BlogCategories] b
on a.ModuleID=b.ModuleID
但它在不同的方式来
ItemID CategoryID
3 1
4 1
3 2
4 2
5 3
我像以前一样使用GROUPBY功能也不过输出,查询 任何错误,如何让我的原始输出
SELECT a.[ItemID],b.[CategoryID]
from [mp_Blogs] a
join [mp_BlogCategories] b
on a.ModuleID=b.ModuleID
group by b.CategoryID,a.ItemID
您希望使用哪个规则来使ItemId = 3-> CatId = 1和ItemId = 4-> CatId = 2?他们都有ModuleId = 11,那么你如何去决定? – Marco
实际上,itemid和catid是标识列,所以还有其他方法可以获得该实际输出 – Chandru
是的,您的内容或表格定义存在问题。如果ModuleId是唯一的键,则项目3和4都链接到类别1和2。我怀疑你缺乏另一个关键。 – regilero