在 SQL 中,可以使用 CASE
語句和聚合函數(如 SUM
)來實現類似于 COUNTIF 的功能
首先,我們需要創建一個示例表格:
CREATE TABLE sales_data (
id INT PRIMARY KEY,
product_name VARCHAR(255),
sales_amount INT
);
接下來,插入一些示例數據:
INSERT INTO sales_data (id, product_name, sales_amount)
VALUES (1, 'Product A', 100),
(2, 'Product B', 200),
(3, 'Product A', 150),
(4, 'Product C', 300),
(5, 'Product B', 250),
(6, 'Product A', 50);
現在,我們將使用 CASE
語句和 SUM
函數來計算每個產品的銷售額大于等于100的次數:
SELECT product_name,
SUM(CASE WHEN sales_amount >= 100 THEN 1 ELSE 0 END) AS countif_sales_amount_ge_100
FROM sales_data
GROUP BY product_name;
這將返回以下結果:
product_name | countif_sales_amount_ge_100
-------------|---------------------------
Product A | 3
Product B | 2
Product C | 1
在這個查詢中,我們使用了 CASE
語句來檢查 sales_amount
是否大于等于 100。如果滿足條件,則返回 1,否則返回 0。然后,我們使用 SUM
函數對每個產品的結果進行求和,得到類似于 COUNTIF 的結果。