如何使用同一个表中的另一列在一列上添加检查约束

时间:2014-04-26 09:27:03

标签: sql constraints

我的表格结构如下:

create table Sale(
    id int primary key,
    product_ID int foreign key references ItemCategory.Item_Details(item_id),
    product_name varchar(10),
    unit_price int,
    quantity int,
    discount int,
    total_price int,
    profit int
)  

现在我必须在销售表中实施以下限制:产品上提供的折扣不应超过产品单价的20%。

1 个答案:

答案 0 :(得分:1)

ALTER TABLE Sale
  ADD CONSTRAINT ValidDiscount
  CHECK(discount <= unit_price *0.2);

这是ANSI 92,但IIRC并非所有RDBMS都支持它...... MySQL没有。