首頁 >資料庫 >mysql教程 >如何使用 SQL 的 GROUP BY 子句按範圍將資料分組?

如何使用 SQL 的 GROUP BY 子句按範圍將資料分組?

DDD
DDD原創
2025-01-17 21:17:10616瀏覽

How to Group Data by Ranges Using SQL's GROUP BY Clause?

利用SQL的GROUP BY子句以範圍分組資料

SQL中的"GROUP BY"子句允許我們根據指定的資料列將資料聚合到群組中。在處理數值資料時,將值分組到範圍內以進行分析和報告非常有用。

問題:

如何在SQL中以範圍「分組」?

解答:

要依範圍分組值,可以使用下列語法:

<code class="language-sql">SELECT
  CASE
    WHEN value BETWEEN start AND end THEN 'range_name'
    -- 为其他范围添加更多情况
  END AS range,
  COUNT(*) AS count
FROM table_name
GROUP BY range;</code>

說明:

  • CASE語句將每個值分類到一個範圍內。
  • BETWEEN運算子檢查值是否落在指定的範圍內。
  • GROUP BY子句以範圍值將結果分組。
  • COUNT(*)函數計算每個範圍內出現的次數。

範例:

考慮以下將分數分組到範圍內的範例:

<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' -- 处理大于或等于20的分数
  END AS score_range,
  COUNT(*) AS count
FROM scores
GROUP BY score_range;</code>

此查詢將產生以下輸出:

score_range count
0-9 11
10-19 14
20-99 3

以上是如何使用 SQL 的 GROUP BY 子句按範圍將資料分組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn