问答题 数据库中有Tahie_priceHistory表,结构如下表所示:
字段
字段名
数据类型
可否为空
单位
备注
ID
商品编号
VARCHAR(8)
不允许
主码
GoodsName
商品名称
VARCHAR(20)
不允许
StartDate
价格生效日期
DATETIME
不允许
主码
EndDate
价格失效日期
DATETIME
不允许
主码,晚于StartDate
SaleUnitPrice
单价
MONEY
不允许
①写出创建Teachers表的SQL语句,要求语句中包含所有的约束。
②现要查询单价最高的前三种商品的商品编号、商品名称和单价(使用TOP语句)。
【正确答案】
【答案解析】①CREATE TABLE Table_PriceHistory(
ID varchar(8) NOT NULL,
GoodsName varchar(20) NOT NULL,
StartDate datetime NOT NULL,
EndDate datetime NOT NULL,
SaleUnitPrice Money NOT NULL,
CHECK(EndDate>StartDate),
PRIMARY KEY(ID,StartDate,EndDate)
)
SELECT TOP 3 WITH TIES ID,GoodsName,SaleUnitPrice
FROM Table_PriceHistory e JOIN Table_PriceHistory b ON a.ID=b.ID
ORDER BY SaleUnitPrice DESE