Group By:对数据进行分组,分组之后的数据就是“分组信息”,和原来表的信息,就没有联系了,
分组之后,可以取到分组数据,就是根据什么字段分组,就能取到字段的名字了。还能使用聚合函数。
Group By和Order By都是要放在Where语句之后,Group By和Order By都是对筛选后的数据进行处理,而Where是用来筛选数据的。
没有出现在Group By子句中的列,是不能放到Select语句后的列名列表中的『聚合函数中除外』
易错点:
SELECT * FROM dbo.Orders GROUP BY ShipCity--这句SQL是错误的,执行报错
SELECT * FROM dbo.Orders ORDER BY ShipCity --这句SQL是正确的。
SELECT ShipCountry FROM dbo.Orders ORDER BY ShipCity--这句SQL是正确的
SELECT ShipCountry FROM dbo.Orders GROUP BY ShipCity--这句SQL是错误的
SELECT COUNT(ShipCountry) FROM dbo.Orders GROUP BY ShipCity--这句SQL是正确的
SELECT CompanyName, COUNT(CompanyName) FROM dbo.Shippers GROUP BY CompanyName--是正确的