1 回答
TA贡献1875条经验 获得超5个赞
您通常会使用两个级别的聚合来做到这一点。首先按分钟聚合并group_concat使用<br>分隔符,然后再次使用~分隔符聚合生成的字符串。
假设一个名为mytable时间戳列的表称为mytimestamp,您将执行以下操作:
select group_concat(gc0 order by myminute separator '~') gc1
from (
select
date_format(mytimestamp, '%Y-%m-%d %H:%i') myminute,
group_concat(mytimestamp order by mytimestamp separator '<br>') gc0
from mytable
group by myminute
) t
DB Fiddle 上的演示:
样本数据:
| 我的时间戳 |
| :------------------ |
| 2019-01-01 00:00:00 |
| 2019-01-01 00:00:01 |
| 2019-01-01 00:00:10 |
| 2019-01-01 00:01:00 |
| 2019-01-02 14:10:00 |
| 2019-01-02 14:10:30 |
查询结果:
| gc1 |
| :------------------------------------------------------------------------------------------------------------------------------- |
| 2019-01-01 00:00:00<br>2019-01-01 00:00:01<br>2019-01-01 00:00:10~2019-01-01 00:01:00~2019- 01-02 14:10:00<br>2019-01-02 14:10:30 |
- 1 回答
- 0 关注
- 194 浏览
添加回答
举报