数据库内连接GROUP BY查询外键表数据行的总数
最近看了看SQL,刚好遇到这个问题。
INNER JOIN [外键表] ON [主键表] 内链接,用 GROUP BY 分组外键数据,COUNT(*)计算该外键数据总行数,最后用 ORDER BY 排序,DESC 关键字表示降序,想让数据输出升序省略DESC关键字即可
代码如下:
SELECT UserMessageBoard.CategoriesId,MessageBoardCategories.CategoriesTitle,COUNT(*) AS CategoriesSum FROM MessageBoardCategories INNER JOIN UserMessageBoard ON UserMessageBoard.CategoriesId = MessageBoardCategories.CategoriesId GROUP BY UserMessageBoard.CategoriesId,MessageBoardCategories.CategoriesTitle ORDER BY CategoriesSum DESC
查询结果如下:
主键表(MessageBoardCategories)数据如下:
外键表(UserMessageBoard)数据如下:
有问题请留言!
SQL萌新,大佬轻喷。