You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查询GROUP BY分组内所有LeadIndication均为FALSE的实例

解决方案

要筛选出分组内所有LeadIndication取值均为FALSE的记录,核心逻辑是验证目标分组内不存在任意一行LeadIndication为TRUE的情况,你可以根据需要返回的结果选择以下两种实现方式:

方式1:仅返回符合条件的分组维度值

如果你只需要获取分组后的AssetID、InvestmentID列表,直接在现有GROUP BY语句后添加HAVING子句做聚合过滤即可:

SELECT [AssetID], [InvestmentID] 
FROM [rdInvestments] 
GROUP BY [AssetID],[InvestmentID]
-- 分组内没有任何一行LeadIndication为TRUE则符合要求
HAVING MAX(CASE WHEN [LeadIndication] = TRUE THEN 1 ELSE 0 END) = 0

如果你使用的数据库支持布尔值直接做聚合运算,也可以简化写为HAVING MAX([LeadIndication]) = FALSE,上述CASE WHEN写法兼容所有主流SQL数据库。


方式2:返回符合条件分组的全部明细行

如果你需要获取分组内所有符合要求的完整行数据,先通过子查询筛选合格分组,再关联回原表取明细即可:

SELECT t1.*
FROM [rdInvestments] t1
INNER JOIN (
    SELECT [AssetID], [InvestmentID]
    FROM [rdInvestments]
    GROUP BY [AssetID],[InvestmentID]
    HAVING MAX(CASE WHEN [LeadIndication] = TRUE THEN 1 ELSE 0 END) = 0
) t2 
ON t1.[AssetID] = t2.[AssetID] 
AND t1.[InvestmentID] = t2.[InvestmentID]

如果你的实际分组维度是Parent字段,只需要将上述语句中GROUP BY和关联条件对应的字段替换为Parent即可。

内容的提问来源于stack exchange,提问作者chrtak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 20:36:03