SQL查找列中每种类型的总计数

前端之家收集整理的这篇文章主要介绍了SQL查找列中每种类型的总计数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在学习sql,并且难以理解应该是一个简单的查询.我有一个具有以下模式的表:
  1. Id | Type
  2. ------------
  3. 1 | Red
  4. 2 | Blue
  5. 3 | Blue
  6. 4 | Red
  7. ..

我想编写一个查询来返回一个表,该表计算每种类型的实例总数,并返回一个具有以下模式的表,例如,如果12行中出现“蓝色”,则16行中出现“红色”在上表中,结果将是:

  1. Blue | Red
  2. -----------
  3. 12 | 16

解决方法

你可以这样做:
  1. SELECT Type,COUNT(*) FROM TABLE GROUP BY Type

如果您希望在单独的列中看到类型,则可以执行以下操作:

  1. SELECT SUM(CASE WHEN Type = 'Blue' THEN 1 ELSE 0 END) AS Blue,SUM(CASE WHEN Type = 'Red' THEN 1 ELSE 0 END) AS Red FROM TABLE

猜你在找的MsSQL相关文章