1

我喜欢我可以在 PostgreSQL 中创建新的枚举类型。但是,如果我想要一个作为一枚举值的列值怎么办。我是否需要使用整数列类型和按位运算符手动实现它,还是有办法继续按名称使用枚举?

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
...
4

1 回答 1

1

您可以使用数组:

CREATE TYPE foo AS ENUM ('none', 'loud', 'bright', 'cheap');
CREATE TABLE t (
    id serial,
    properties foo[]
);
于 2012-12-28T07:56:42.093 回答