跳到主要内容

SUM_IF

SUM_IF

后缀 -If 可以附加到任何聚合函数的名称上。在这种情况下,聚合函数接受一个额外的参数 —— 一个条件。

SUM_IF(<列>, <条件>)

示例

创建表并插入示例数据

CREATE TABLE order_data (
id INT,
customer_id INT,
amount FLOAT,
status VARCHAR
);

INSERT INTO order_data (id, customer_id, amount, status)
VALUES (1, 1, 100, 'Completed'),
(2, 2, 50, 'Completed'),
(3, 3, 80, 'Cancelled'),
(4, 4, 120, 'Completed'),
(5, 5, 75, 'Cancelled');

查询演示:计算已完成订单的总金额

SELECT SUM_IF(amount, status = 'Completed') AS total_amount_completed
FROM order_data;

结果

| total_amount_completed |
|------------------------|
| 270.0 |
欢迎体验 Databend Cloud

基于 Rust + 对象存储构建的新一代多模态数仓,一个平台即可进行 BI、向量、全文检索及地理空间分析。

支持标准 SQL,自动弹性伸缩,助您快速构建现代化数据平台。

注册即领 ¥200 代金券。

注册体验