【发布时间】:2018-10-05 03:45:58
【问题描述】:
我正在尝试创建一个表格并根据以下标准对价格进行分类:
- 对于类别 1,值的范围是 7 到 20(含)。
- 对于类别 2,值的范围是 20 到 50(含)。
- 对于类别 3,值的范围是 50 到 100(含)。
- 对于任何其他类别,值的范围是 100 到 350(含)。
但我一直报错
CREATE TABLE LabTest
(
testCode char(4) not null,
name char(40) not null,
category int not null,
price decimal(30,2) not null,
ageAppropriate int not null,
constraint testCode_PK PRIMARY KEY (testCode),
constraint age_CHK check (ageAppropriate >= 0),
);
ALTER TABLE LabTest
ADD CONSTRAINT Category_CHK
CHECK (CASE Category
WHEN Price BETWEEN 7 AND 20 THEN 1
WHEN Price BETWEEN 20 AND 50 THEN 2
WHEN Price BETWEEN 50 AND 100 THEN 3
WHEN Price BETWEEN 100 AND 350 THEN 4
ELSE 0
END);
【问题讨论】:
标签: sql-server constraints case between