我喜欢我可以创建new enum types in PostgreSQL。但是,如果我想要一个列值是 set 的枚举值,该怎么办呢?我是否需要使用整数列类型和按位运算符手动实现,或者是否有办法按名称继续使用枚举?
CREATE TYPE foo AS ENUM ('none', 'loud', 'bright', 'cheap')
CREATE TABLE t (
id serial,
properties [set of foo?]
)
...
SELECT * FROM t;
1 loud
2 loud, cheap
3 bright
4 none
...
答案 0 :(得分:1)
您可以使用数组:
CREATE TYPE foo AS ENUM ('none', 'loud', 'bright', 'cheap');
CREATE TABLE t (
id serial,
properties foo[]
);