在 MySQL 中,COUNTIF
函數并不存在,但你可以使用 COUNT()
和 CASE
語句來實現類似的功能
SELECT
COUNT(CASE WHEN condition1 THEN 1 ELSE NULL END) AS count_if_condition1,
COUNT(CASE WHEN condition2 THEN 1 ELSE NULL END) AS count_if_condition2
FROM
your_table;
這里是一個具體的例子。假設我們有一個名為 orders
的表,其中包含 order_date
(訂單日期)和 total_amount
(訂單總金額)列。我們想要計算滿足特定條件的訂單數量,例如訂單日期在 2021 年 1 月 1 日之后的訂單數量,以及訂單總金額大于 100 的訂單數量。
SELECT
COUNT(CASE WHEN order_date > '2021-01-01' THEN 1 ELSE NULL END) AS count_if_order_date_after_2021,
COUNT(CASE WHEN total_amount > 100 THEN 1 ELSE NULL END) AS count_if_total_amount_gt_100
FROM
orders;
這將返回一個結果集,其中包含兩列:count_if_order_date_after_2021
和 count_if_total_amount_gt_100
,分別表示滿足每個條件的訂單數量。