首頁 >資料庫 >mysql教程 >如何使用 SQL 將資料分組到範圍中?

如何使用 SQL 將資料分組到範圍中?

Patricia Arquette
Patricia Arquette原創
2025-01-17 21:31:17282瀏覽

How to Group Data into Ranges using SQL?

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中文網其他相關文章!

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