SQL 数据范围分组
将数据分组到不同的范围是数据分析中常见的任务。在 SQL 中,有多种方法可以实现此目的,包括使用 CASE 表达式和条件语句。
方法一:使用 CASE 表达式
使用 CASE 表达式,您可以创建一个名为“range”的新列,将每个分数分配到一个范围。例如:
<code class="language-sql">SELECT CASE WHEN score BETWEEN 0 AND 9 THEN '0-9' WHEN score BETWEEN 10 AND 19 THEN '10-19' ELSE '20-99' END AS range FROM scores;</code>
然后,您可以使用此 range 列来分组并计算结果:
<code class="language-sql">SELECT range AS [分数范围], COUNT(*) AS [出现次数] FROM ( SELECT CASE WHEN score BETWEEN 0 AND 9 THEN '0-9' WHEN score BETWEEN 10 AND 19 THEN '10-19' ELSE '20-99' END AS range FROM scores) t GROUP BY t.range;</code>
方法二:使用 SELECT 语句中的条件语句
或者,您可以在 SELECT 子句中使用条件语句直接创建 range 列:
<code class="language-sql">SELECT CASE WHEN score >= 0 AND score < 10 THEN '0-9' WHEN score >= 10 AND score < 20 THEN '10-19' ELSE '20-99' END AS [分数范围], COUNT(*) AS [出现次数] FROM scores GROUP BY [分数范围];</code>
两种方法都能生成所需输出,显示每个分数范围的出现次数。
以上是如何使用 SQL 将数据分组到范围中?的详细内容。更多信息请关注PHP中文网其他相关文章!