postgresql改变索引顺序

发布于 2025-01-11 14:32:38 字数 244 浏览 0 评论 0原文

我创建了一个索引,如下所示:

CREATE INDEX index_name_desc_idx
          ON table_name
       USING btree (updated_at ASC)

现在:ASC 是一个错误,我需要将其更改为 DESC。我正在尝试使用 ALTER INDEX 进行一些操作,但是似乎没有任何效果,恐怕唯一要做的就是删除索引并重新创建它。有没有办法编辑索引顺序?

I created an index as follows:

CREATE INDEX index_name_desc_idx
          ON table_name
       USING btree (updated_at ASC)

now: ASC was an error, I need to change it to DESC. I'm trying several things with ALTER INDEX however nothing seems to work and I'm afraid the only thing to do is to remove the index and recreate it. Is there a way to edit the index ordering?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

孤寂小茶 2025-01-18 14:32:38

恐怕唯一要做的就是删除索引

不要害怕,您可以在没有任何停机时间的情况下完成此操作:

  • 首先以良好的顺序创建新索引,但使用 CONCURRENTLY 以避免任何锁定,
  • 然后删除旧索引。

没有锁,没有索引就没有查询,唯一的缺点是在进行更改时索引大小为 2n。

I'm afraid the only thing to do is to remove the index

Don't be afraid, You can do it without any downtime :

  • first create your new index in the good order, but with CONCURRENTLY to avoid any lock,
  • then, drop the old index.

No lock, and no query without index, with the only downside of having a 2n index size while you do the change.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文