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

如何在含聚合函数的SQL查询中加入timestamp时间戳列

报错原因说明

该报错是SQL分组聚合的标准规则导致的:使用GROUP BY对数据分组后,SELECT子句中只能保留两类内容:一是GROUP BY指定的分组字段,二是被SUM/COUNT/MAX这类聚合函数包裹的其他字段。你之前的查询仅按activity_title分组,直接查询activity_published_at不属于上述两类,因此触发报错。

根据你的业务逻辑,同一个短信库(同一个activity_title)的发布日期activity_published_at是完全一致的,可以用以下两种方案解决问题:

方案1:将activity_published_at加入GROUP BY子句

这是最符合SQL规范的方案,同一个活动的发布日期固定,加入后不会改变原有分组逻辑,查询语句如下:

SELECT 
  activity_title,
  SUM(message_segments) AS "cumulative_message_segments",
  activity_published_at
FROM textbankvendor.messages_export
GROUP BY 1, 3
ORDER BY 1

方案2:用聚合函数包裹activity_published_at

如果你不想修改GROUP BY子句,可以用MAX或者MIN这类聚合函数包裹activity_published_at,同一个活动下所有行的发布日期相同,取最大/最小值结果和原始值完全一致:

SELECT 
  activity_title,
  SUM(message_segments) AS "cumulative_message_segments",
  MAX(activity_published_at) AS activity_published_at
FROM textbankvendor.messages_export
GROUP BY 1
ORDER BY 1

两种方案返回的结果完全一致,可根据使用习惯选择。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 02:45:02