我在mysql中有一堆记录..我有5个五类(实际上是时间段,如下午1-2点,下午2-3点,下午3-4点等),这在记录的任何字段中都不存在。
我需要像这样查询MySQL -
查找所有结果grouped by category1, category2
等等,并在群组sort records by field1, field2
等内。
实际查询如下所示 -
Group all records whose time slot fall in cat1, cat2
依此类推,然后sort within this group by field1, field2, field3
答案 0 :(得分:1)
您的查询含糊不清,但您似乎想要一个案例:
select (case when time < <value 1> then 'group1'
when time < <value 2> then 'group2'
. . .
end) as grp,
count(*), . . .
from table t
group by grp
order by grp;
如果您确实希望按时间值而不是组名称进行排序,请使用:
order by min(time);