【发布时间】:2017-05-12 21:50:52
【问题描述】:
我有一个包含timestamp 和value 列的数据库。日志记录是定期进行的。现在我想做每日汇总。已经这样做了:
SELECT
strftime("%Y-%m-%d", timestamp) AS "new_timestamp",
AVG(value) as value_avg,
MIN(value) as value_min,
MAX(value) as value_max,
COUNT(*) as num_samples,
/* ... something for when max and min value occurs */
FROM my_table
GROUP BY "new_timestamp"
问:我如何获得时间戳/时间当 MIN 或 MAX 在当天发生?
编辑:在我的具体情况下,如果有多个最小值或最大值,那么应该选择哪一个并不重要。我正在使用 SQLite。
【问题讨论】:
-
您使用的是哪个 dbms?如果一天中存在两次相同的最大值(或最小值),预期的结果是什么?
-
添加示例数据和预期结果您的 Q 不是很清楚
-
@jarlh,我正在使用 SQLite。抱歉忘了提。
-
@O.Jones,我将从那里尝试示例。真的不知道如何为此提出问题。
标签: sql sqlite greatest-n-per-group