作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 postgres 枚举想要更改其默认排序顺序
我了解了 pg_enum 类型 enumsortorder但还没有找到任何关于如何更改订单的文档。
我对上下文的枚举:
CREATE TYPE day AS ENUM (
'everyday',
'sunday',
'monday',
'tuesday',
'wednesday',
'thursday',
'friday',
'saturday'
);
目前,当我按天检索订单时,我从“每天”到“星期六”。我想从周一到周日获取,并将 Everyday 作为最后一个值。
这可能吗?
最佳答案
您只能将类型替换为新类型,这可能有点费力。例如:
BEGIN;
-- drop views, functions which are using day
ALTER TYPE day RENAME TO day_old;
CREATE TYPE day AS ENUM (
'everyday',
'monday',
'tuesday',
'wednesday',
'thursday',
'friday',
'saturday',
'sunday'
);
ALTER TABLE x ALTER my_day TYPE day USING my_day::TEXT::day;
ALTER TABLE y ALTER your_day TYPE day USING your_day::TEXT::day;
-- etc. etc.
-- Recreate views, functions which are using day
DROP TYPE day_old;
END;
关于postgresql - 如何更改现有 postgres 枚举的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55305793/
我是一名优秀的程序员,十分优秀!