CASE 基于布尔值对列求和

Posted

技术标签:

【中文标题】CASE 基于布尔值对列求和【英文标题】:CASE to sum column based on boolean 【发布时间】:2019-08-05 20:51:57 【问题描述】:

我有:

SELECT 
 SUM(X) AS columnA,

CASE WHEN Y = TRUE THEN 'VAR' ELSE 'VAR2' END

然后我分组以获取计数但是当 Y 仅为 TRUE 时如何对 X 求和?或者获取 A 相对于真/假的百分比?

【问题讨论】:

【参考方案1】:

当 Y 仅为 TRUE 时,我如何对 X 求和?

SELECT SUM(CASE WHEN Y = TRUE THEN X ELSE 0 END)

【讨论】:

以上是关于CASE 基于布尔值对列求和的主要内容,如果未能解决你的问题,请参考以下文章

根据来自不同列的 2 个其他值对列的值求和

基于一周范围的窗口对列值求和(黑斑羚)

基于多索引对列值求和

Python Bool 和 int 比较以及使用布尔值对列表进行索引

sql查询中case语句中的布尔值

将字符串转化为布尔值的方法