1、创建一个菜单数据表(表名yzmc),包含字段 编号、菜名、价格、销量、上架日期、在售状态 设置编号为主键,菜名、价格、在售状态为必填(用1表示在售,0表示售罄),菜名不能重复,销量默认为0
时间: 2023-07-10 17:28:49 浏览: 134
好的,你的第一个问题是如何创建一个菜单数据表(表名yzmc),包含字段编号、菜名、价格、销量、上架日期、在售状态,设置编号为主键,菜名、价格、在售状态为必填(用1表示在售,0表示售罄),菜名不能重复,销量默认为0。
根据你的要求,可以使用以下SQL语句创建该表:
```
CREATE TABLE yzmc (
编号 INT PRIMARY KEY,
菜名 VARCHAR(50) NOT NULL UNIQUE,
价格 DECIMAL(10, 2) NOT NULL,
销量 INT DEFAULT 0,
上架日期 DATE,
在售状态 INT NOT NULL CHECK (在售状态 IN (0, 1))
);
```
这个SQL语句创建了一个名为 `yzmc` 的表,其中 `编号` 是主键,`菜名` 是唯一的,`价格` 和 `在售状态` 是必填项。`销量` 默认为0,`上架日期` 是可选的。在售状态只能为0或1,分别表示售罄和在售。
相关问题
2、往数据表yzmc中添加以下数据 1 永州喝螺 15.00 无 当前时间 售罄 2 永州血鸭 23.00 无 当前时间 在售 3 祁阳曲米鱼 16.00 无 当前时间 在售 4 东安鸡 25.00 无 当前时间 在售 5 祁阳米粉 5.00 无 当前时间 在售 6 橙皮糖 10.00 无 当前时间 售罄 7 辣椒炒肉 18.00 无 当前时间 在售
好的,你的第二个问题是如何向表 `yzmc` 中添加数据。根据你提供的数据,可以使用以下SQL语句向表中添加数据:
```
INSERT INTO yzmc (编号, 菜名, 价格, 销量, 上架日期, 在售状态)
VALUES
(1, '永州喝螺', 15.00, 0, NOW(), 0),
(2, '永州血鸭', 23.00, 0, NOW(), 1),
(3, '祁阳曲米鱼', 16.00, 0, NOW(), 1),
(4, '东安鸡', 25.00, 0, NOW(), 1),
(5, '祁阳米粉', 5.00, 0, NOW(), 1),
(6, '橙皮糖', 10.00, 0, NOW(), 0),
(7, '辣椒炒肉', 18.00, 0, NOW(), 1);
```
这个SQL语句向表 `yzmc` 中插入了7条数据,分别是永州喝螺、永州血鸭、祁阳曲米鱼、东安鸡、祁阳米粉、橙皮糖和辣椒炒肉。其中,销量默认为0,上架日期为当前时间,售罄状态用0表示,在售状态用1表示。
查询价格高于祁阳名菜均价的永州在售名菜
好的,你的问题是如何查询价格高于祁阳名菜均价的永州在售名菜。可以使用以下SQL语句查询:
```
SELECT *
FROM yzmc
WHERE 菜名 LIKE '%永州%'
AND 在售状态 = 1
AND 价格 > (SELECT AVG(价格) FROM yzmc WHERE 菜名 LIKE '%祁阳%')
```
这个SQL语句使用子查询获取祁阳名菜的均价,然后使用主查询获取永州在售名菜价格高于祁阳名菜均价的所有菜品信息。`LIKE` 操作符用于模糊匹配菜名中包含 '永州' 和 '祁阳' 的菜品,`AVG` 函数用于计算祁阳名菜的均价。
阅读全文