当您使用多列约束格式定义检查约束时,检查约束可以应用于相同表的多列。(但是,不能创建其 condition 使用来自其它表中某列的值的检查约束。)
CREATE TABLE my_accounts
(
chk_id SERIAL PRIMARY KEY,
acct1 MONEY,
acct2 MONEY,
CHECK (0 < acct1 AND acct1 < 99999),
CHECK (0 < acct2 AND acct2 < 99999),
CHECK (acct1 > acct2)
);
在此示例中,列 acct1 必须比大于列 acct2 ,否则插入或更改会失败。