在 SQL 中,雖然沒有像 COUNTIF 這樣的函數(shù),但可以使用 CASE 語句結(jié)合 COUNT 或 SUM 函數(shù)來實(shí)現(xiàn)類似的功能
SELECT COUNT(CASE WHEN condition THEN 1 ELSE NULL END) AS countif_result
FROM table_name;
例如,假設(shè)我們有一個(gè)名為 “orders” 的表格,包含 “order_id” 和 “status” 兩個(gè)字段。我們想要計(jì)算狀態(tài)為 “completed” 的訂單數(shù)量,可以使用以下查詢:
SELECT COUNT(CASE WHEN status = 'completed' THEN 1 ELSE NULL END) AS completed_orders
FROM orders;
SELECT SUM(CASE WHEN condition THEN 1 ELSE 0 END) AS countif_result
FROM table_name;
同樣以 “orders” 表格為例,我們可以使用以下查詢計(jì)算狀態(tài)為 “completed” 的訂單數(shù)量:
SELECT SUM(CASE WHEN status = 'completed' THEN 1 ELSE 0 END) AS completed_orders
FROM orders;
這兩種方法都可以實(shí)現(xiàn)類似 COUNTIF 的功能,根據(jù)實(shí)際需求選擇合適的方法。