在 SQL 中,COUNTIF
和 GROUP BY
可以結合使用,以便根據特定條件對數據進行分組和計數
首先,我們需要了解 COUNTIF
和 GROUP BY
的基本語法:
COUNTIF
: 這是一個條件計數函數,用于計算滿足特定條件的行數。它的語法如下:COUNTIF(condition)
GROUP BY
: 這是一個用于將相似數據分組在一起的子句。它的語法如下:GROUP BY column1, column2, ...
現在,讓我們看一個例子,說明如何在 SQL 查詢中同時使用 COUNTIF
和 GROUP BY
。
假設我們有一個名為 orders
的表,其中包含以下列:order_id
、customer_id
和 order_status
。我們想要計算每個客戶的已完成訂單數量。這可以通過以下查詢實現:
SELECT
customer_id,
COUNTIF(order_status = 'completed') AS completed_orders
FROM
orders
GROUP BY
customer_id;
在這個查詢中,我們首先選擇 customer_id
列。然后,我們使用 COUNTIF
函數來計算每個客戶的已完成訂單數量。我們將 order_status
列與字符串 'completed'
進行比較,如果匹配,則計數器遞增。最后,我們使用 GROUP BY
子句按 customer_id
對結果進行分組。
這將返回一個結果集,其中包含每個客戶的 ID 和他們的已完成訂單數量。