通过日期时间获取带有日期时间的对象ID组

时间:2019-09-19 10:43:46

标签: mysql mariadb

假设我们有这样的表格:

+----------------------------------+----------------------------+
| id                               | start                      |
+----------------------------------+----------------------------+
| 06c561305383482e98064ssdfd6ccf74 | 2019-08-30 14:41:40.697301 |
| 0aec07d9acdd48c485ab3sfhsffdsa8c | 2019-09-02 05:45:09.274541 |
| 0d240asdfasd49579e2be8821b908fdc | 2019-09-02 05:45:08.745885 |
| 00al4eebb9a34sdsdfsdff128518dc4f | 2019-08-30 14:42:29.094314 |

是否可以在单个查询中获得与此结构类似的数据? 我想按日期组中所有对象ID的唯一日期对数据进行分组。

date:
    2019-08-30:
       ids: 
           - 06c561305383482e98064ssdfd6ccf74 
           - 00al4eebb9a34sdsdfsdff128518dc4f
    2019-09-02:
       ids: 
           - 0aec07d9acdd48c485ab3sfhsffdsa8c
           - 0d240asdfasd49579e2be8821b908fdc

1 个答案:

答案 0 :(得分:0)

感谢@Salaman

SELECT DATE(tab.start), GROUP_CONCAT(id) FROM tab GROUP BY DATE(tab.start);

像魅力一样工作!

还请记住有关设置:

SET SESSION group_concat_max_len = @@max_allowed_packet;