MySQL:按小时和其他不同字段分组

MySQL: group by hour AND by other distinct fields

我有一个 'logs' table,其中存储了搜索结果的计数器,以及搜索查询和搜索它的用户。

我的目标是显示按小时分组的结果,但我在使用 GROUP BY 时遇到了一些问题,因为我在此过程中丢失了不同的用户/查询。

这里是 fiddle:http://sqlfiddle.com/#!9/484c01/7

如您所见,结果是根据结果编号计算的。但输出不正确。在此先感谢您的帮助。

以下方法可以返回的数据大小有限制,但是如果您想在执行 GROUP BY 时保留 non-grouped-by-columns 的不同行值,您可以使用 GROUP_CONCAT MySQL 函数,它将每一行的值组合成一行,用逗号分隔。

有关用法示例,请参阅 http://dev.mysql.com/doc/refman/5.6/en/group-by-functions.html#function_group-concat

重要提示:请务必阅读上面提供的 link 中关于 group_concat_max_lenmax_allowed_packet 的文档说明。