带有Join,Count和Where的SQL查询

前端之家收集整理的这篇文章主要介绍了带有Join,Count和Where的SQL查询前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有2个表,我正在尝试进行一个查询以节省一些工作.
Table 1: id,category id,colour
Table 2: category id,category name

我想加入他们,以便我获得id,类别ID,类别名称,颜色

然后我想限制它,以便没有选择“红色”项目(WHERE color!=“red”)
然后我想计算每个类别中的记录数(COUNT(id)GROUP BY(类别ID).

我已经试了:

SELECT COUNT(table1.id),table1.category_id,table2.category_name 
FROM table1 
INNER JOIN table2 ON table1.category_id=table2.category_id 
WHERE table1.colour != "red"

但它只是不起作用.我尝试了很多变化,当我尝试上面的查询时,没有得到任何结果.

解决方法

您必须使用GROUP BY才能返回多条记录,
SELECT  COUNT(*) TotalCount,b.category_id,b.category_name 
FROM    table1 a
        INNER JOIN table2 b
            ON a.category_id = b.category_id 
WHERE   a.colour <> 'red'
GROUP   BY b.category_id,b.category_name

猜你在找的MsSQL相关文章