|
|
1
10
如果您正在使用Postgresql<8.4(考虑到计划,我想你是)-通常最好使用
在8.4中没有区别,因为DISTINCT也被“教导”能够使用群运算符。 |
|
|
2
1
SQL必须执行相同的步骤来收集所需的信息,为GROUP BY或“等效”DISTINCT查询做准备:相同的过滤器、相同的排序等。区别在于最后一步,这里Postgre称之为“组”或“唯一”。 当GROUP BY查询在其SELECT中不包含任何聚合时,“GROUP”和“Unique”本质上是同一件事(即使它们归结为服务器代码中的不同方法)。在存在某些聚合的情况下,例如COUNT(*)、MAX(some_field)等。“组”步骤需要更多的资源,因为它需要额外的存储空间来存储计数、最小值等,并且需要递增或与之进行比较等。 我会选择GROUP BY方法,因为如果在某个时候需要这样的信息,可以在SELECT中添加聚合,而无需对查询进行太多更改。即使没有显示实际计数,应用程序也可以按此计数的降序显示域。 |
|
cluster1 · 采取独立的新行动的好处是什么? 1 年前 |
|
|
Robert · 使用JSON或哈希时,将NULL替换为NIL 1 年前 |
|
|
Fred Willmore · Rails控制器不呈现任何模板 2 年前 |
|
|
Diogo Amaral · 实现API请求的正确方式 2 年前 |
|
|
Meknassih · 在控制器方法中分配给模型没有任何作用 2 年前 |
|
|
Michael Ding · Rails上的默认会话到期问题 2 年前 |
|
|
Flávio · 基于另外两个生成数组 2 年前 |