CREATE TABLE foo (
dt AS DATE NOT NULL,
type AS TEXT NOT NULL,
CONSTRAINT unique_dt_type UNIQUE(dt,type) -- check constraint(?)
)
特定の条件のみが存在する場合に一意の制約を作成するための正しい構文を考えようとすると、頭がおかしくなります。
指定された、type
値を持つことができます。日付ごとA-F
に 1 つしか存在できませんが、複数存在する可能性があります。良いテーブルの例:A
B-F
2010-01-02 | 'A' -- only one
2010-01-02 | 'B' -- can have multiple
2010-01-02 | 'B'
2010-01-02 | 'B'
2010-01-02 | 'C' -- can have multiple
2013-01-02 | 'A' -- only one
2010-01-02 | 'B' -- can have multiple
2010-01-02 | 'B'
2013-01-02 | 'F' -- can have multiple
2013-01-02 | 'F'
チェック/一意の構文を読み取ろうとしましたが、例はありませんでした。 CHECK
近づきましたが、範囲に限定しただけで、UNIQUE
シナリオと組み合わせて使用されませんでした. 検索も試してみましたが、私の検索スキルが標準に達していないか、類似の質問がありません。