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

如何无需临时表、嵌套子查询合并两个SQL聚合查询?

合并两个聚合查询的解决方案

可以通过条件聚合实现,无需临时表或嵌套子查询,一次分组即可完成两个查询的计算逻辑:

SELECT 
    Value,
    MAX(CASE WHEN Value IN ('A', 'X') THEN CreateDT END) AS CreateDT,
    MAX(CASE WHEN Value IN ('C', 'Y') THEN UpdateDT END) AS UpdateDT
FROM SampleTbl
WHERE Value IN ('A', 'X', 'C', 'Y') -- 过滤目标Value,减少不必要计算
GROUP BY Value

逻辑说明:

  • 利用CASE语句限定仅对指定Value集合计算对应字段的最大值,不符合条件的行返回NULL,而MAX函数会自动忽略NULL值
  • 外层WHERE子句提前过滤出需要处理的Value,提升查询效率
  • 分组后每个Value会同时得到对应的CreateDT和UpdateDT最大值,与期望结果完全匹配

执行后得到的结果:

ValueCreateDTUpdateDT
A1/20/20231/26/2023
C2/20/20232/23/2023

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 21:42:43