admin

列的顺序在group by子句中是否重要?

sql

如果我有两列,一列具有非常高的基数,而另一列具有非常低的基数(值的唯一数目),那么按哪个顺序分组是否重要?

这是一个例子:

select 
     dimensionName, 
     dimensionCategory, 
     sum(someFact)
from SomeFact f
join SomeDim d on f.dimensionKey = d.dimensionKey
group by 
    d.dimensionName,  -- large number of unique values
    d.dimensionCategory -- small number of unique values

在某些情况下重要吗?


阅读 164

收藏
2021-05-10

共1个答案

admin

不,顺序对于GROUP BY子句无关紧要。

MySQL和SQLite是我所知道的仅有的数据库,它允许您选择按组方式(非标准,不可移植)从组中省略的列,但是顺序也不重要。

2021-05-10