gpt4 book ai didi

MySQL - 如何将小时分组,偏移 30 分钟

转载 作者:可可西里 更新时间:2023-11-01 08:21:39 24 4
gpt4 key购买 nike

我想选择 1 小时间隔内的记录,以及小时间隔内的最高值和最低值。我可以按小时执行此操作(例如,凌晨 1:00、凌晨 2:00、凌晨 3:00),但我想按指定的分钟数(例如,凌晨 1:30、凌晨 2:30、凌晨 3:30,或凌晨 1:50、凌晨 2:50、凌晨 3:50)。我不想按半小时分组(例如 1:00、1:30、2:00、2:30)这是我间隔 1 小时的 SQL:

select date(date) 'aDate', hour(date) 'aHour', date, bidOpen, max(bidHigh), min(bidLow)
from data
where date > "2010-10-10"
group by aDate, aHour

我试过:hour(date) + .5 'aHour' : 但没用。

谢谢!!

最佳答案

一种解决方案是使用包含您的时间片的帮助表。

FromHour 和 ToHour 只是字符串

TABLE timeslice
ID | FromHour | ToHour | NextDay
---+----------+--------+-------
1 | 00:30 | 01:30 | 0
2 | 01:30 | 02:30 | 0
<snip>
24 | 23:30 | 00:30 | 1

select date(date) aDate, ID ,date, bidOpen, max(bidHigh),min(bidLow)
from data inner join timeslice
ON date >= CONCAT(date(Date),' ',FromHour)
and date < concat(date(DATEADD(day,NextDay,date),' ',ToHour)
group by aDate, ID

关于MySQL - 如何将小时分组,偏移 30 分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6560005/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com