MySQL GROUP BY多列

时间:2011-11-13 01:33:25

标签: mysql group-by

我需要分别在2列上执行GROUP BY ...

通常来说,我希望查询说:GROUP BY第1列,然后一旦执行了此分组,并且返回的行已经过细化,请返回到顶部和GROUP BY列2以优化行再次返回。

例如,而不是陈述: GROUP BY column_1,column_2

我想陈述(我明白这是不正确的语法): GROUP BY column_1 GROUP BY column_2

如果不清楚,我可以包含一个带有预期返回结果的样本查询。

2 个答案:

答案 0 :(得分:3)

你想做这样的事吗?

select ...
from (
    select ...
    from some_table
    where ...
    group by column1
) as dt
group by column2

这是我能想到的最接近你问题似乎要问的问题。

答案 1 :(得分:1)

大多数情况下,您可以在mysql中按多列进行分组。查询为:select * from table group by col1, col2

但你无法得到你想要的答案。所以你还有机会在mysql中得到正确的答案。也就是说,您必须使用子查询。
select * from (select * from table group by col2) tabl group by col1