gpt4 book ai didi

sql - 如何在 SQL 查询中聚合两类值?

转载 作者:行者123 更新时间:2023-11-29 12:06:57 25 4
gpt4 key购买 nike

我有一个包含间隔的表:

CREATE TABLE tbl (
user_id: INTEGER,
start: TIMESTAMP,
end: TIMESTAMP,
billable: BOOLEAN
);

我想创建一个如下所示的 View :

user_id | billable_time | unbillable_time

我可以使用这样的查询得到这两个中的一个:

SELECT user_id, sum(end - start) AS billable_time WHERE billable = TRUE GROUP BY user_id;

但是,我需要两列,不可计费时间是等效的:

SELECT user_id, sum(end - start) AS unbillable_time WHERE billable = FALSE GROUP BY user_id;

如何将这两个值放入一个查询中?

最佳答案

select user_id, sum(case billable when 1 then (end - start) end) as can_bill,
sum(case billable when 0 then (end - start) end) as unbillable

关于sql - 如何在 SQL 查询中聚合两类值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1406663/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com