Postgresql 用GORM排序postgres索引
我想知道如何设置索引的默认顺序。Grails 2.3.3,postgres 9 目标是这个指数:Postgresql 用GORM排序postgres索引,postgresql,grails,gorm,Postgresql,Grails,Gorm,我想知道如何设置索引的默认顺序。Grails 2.3.3,postgres 9 目标是这个指数: "crstate_idx" btree (cr_state, last_updated DESC) 此GORM代码: static mapping = { crState index: 'crState_Idx' lastUpdated index: 'crState_Idx' } 让我: "crstate_idx" btree (cr_state, last_updated)
"crstate_idx" btree (cr_state, last_updated DESC)
此GORM代码:
static mapping = {
crState index: 'crState_Idx'
lastUpdated index: 'crState_Idx'
}
让我:
"crstate_idx" btree (cr_state, last_updated)
如何添加描述部分?没有降序索引。B树索引只是从最低值到最高值排序。DESC vs ASC的定义是从末尾还是从开头开始扫描。这是关于您执行的查询,因此我建议您查看如何执行以降序返回行的查询 如果它不支持按降序排列的索引,也不会太奇怪。除了非常基本的索引之外,许多模式生成器似乎不支持任何东西。也许它可能有一个
order:'desc'
或order:desc
你可以继续吗?我想你可以检查postgre的hibernate方言,看看这个选项是否存在。根据postgres手册,创建索引允许指定顺序。这个问题很好。这是为了实现一个队列-顶部总是被抓取,因此预排序是合乎逻辑的。我不记得测试过性能差异,不管是像你说的那样,索引查找操作在逻辑上是相同的,还是排序操作可以避免。索引规范是一个问题,所以这是一个有趣的观点,但并没有回答这个问题。你确实是对的——我从来不知道这一点。我想DESC对于单调递减的串行列可能很有用。