CREATE TABLE foo (
dt AS DATE,
ts AS TIMESTAMP
);
什么是创建唯一约束的正确方法,其中的日期值ts
出现一次dt
;例子:
dt | ts
2010-01-02 | 2010-01-02 17:19:08
2010-01-02 | 2011-11-11 01:01:01
2010-01-02 | 2011-11-11 17:19:08 -- would error on insert (already a 2011-11-11)
试图:
无效的语法,但我想要实现的目标:
CREATE UNIQUE INDEX unique_tsdate_per_dt ON foo(dt,ts::date);
不完整的尝试 - 可能是子查询?
CREATE UNIQUE INDEX unique_tsdate_per_dt ON foo(dt) WHERE ts::date -- ?