2
CREATE TABLE foo (
dt AS DATE,
ts AS TIMESTAMP
);
Что такое правильный способ создать уникальное ограничение, где значение даты ts
происходит один раз в dt
; Пример:SQL: приведение в уникальном индексе
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 -- ?
Моего следующий тест должен был попробовать 'cast()', но 'date()' будет работать - thx – vol7ron