10-1 查询重量在[40,65]之间的产品信息
本题目要求编写SQL语句,
检索出product
表中所有符合40 <= Weight <= 65
的记录。
提示:请使用SELECT语句作答。
表结构:
CREATE TABLE `product` (
`Pid` varchar(20), --商品编号
`PName` varchar(50), --商品名称
`Weight` decimal(10, 3) --重量
);
表样例
product
表:
Pid | PName | Weight |
---|---|---|
P01 | M6螺栓 | 30 |
P02 | M8螺栓 | 40 |
P03 | M16螺栓 | 140 |
P04 | 螺帽 | 30 |
P05 | 螺母 | 45 |
P06 | 垫片 | 10 |
P07 | 铰链 | 70 |
P21 | 螺钉 | 3 |
输出样例:
Pid | PName | Weight |
---|---|---|
P02 | M8螺栓 | 40 |
P05 | 螺母 | 45 |
select Pid,PName,Weight
from product
where 40<=Weight and Weight<=65
10-2 查询姓刘的员工信息
本题目要求编写SQL语句,
检索出employee
表中姓刘的员工信息。
提示:请使用SELECT语句作答。
表结构:
CREATE TABLE `employee` (
`Eid` varchar(10), --职工编号
`EName` varchar(30), --职工姓名
`Wno` varchar(10), --所在仓库
`Salary` int(11) --职工工资
);
表样例
employee
表:
Eid | EName | Wno | Salary |
---|---|---|---|
0010 | 张三 | A01 | 3600 |
0011 | 刘勇 | A01 | 2700 |
0012 | 张立 | A01 | 8500 |
0021 | 刘靖 | A02 | 2500 |
0022 | 王强 | A02 | 5600 |
0023 | 李军 | 5000 | |
0031 | 王林 | 3500 |
输出样例:
Eid | EName | Wno | Salary |
---|---|---|---|
0011 | 刘勇 | A01 | 2700 |
0021 | 刘靖 | A02 | 2500 |
select Eid,EName,Wno,Salary
from employee
where EName like '刘%'
ps:%代表后面多个任意,_代表单个任意
10-3 查询仓库号为'A01'的所有员工信息,并按照工资降序排列
本题目要求编写SQL语句,
检索出employee
表中仓库号为’A01’的所有员工信息,并按照工资降序排列。
提示:请使用SELECT语句作答。
表结构:
CREATE TABLE `employee` (
`Eid` varchar(10), --职工编号
`EName` varchar(30), --职工姓名
`Wno` varchar(10), --所在仓库
`Salary` int(11) --职工工资
);
表样例
employee
表:
Eid | EName | Wno | Salary |
---|---|---|---|
0010 | 张三 | A01 | 3600 |
0011 | 刘勇 | A01 | 2700 |
0012 | 张立 | A01 | 8500 |
0021 | 刘靖 | A02 | 2500 |
0022 | 王强 | A02 | 5600 |
0023 | 李军 | 5000 | |
0031 | 王林 | 3500 |
输出样例:
Eid | EName | Wno | Salary |
---|---|---|---|
0012 | 张立 | A01 | 8500 |
0010 | 张三 | A01 | 3600 |
0011 | 刘勇 | A01 | 2700 |
select Eid,EName,Wno,Salary
from employee
where Wno ='A01'
order by Salary desc
ps:asc是升序,desc是降序
10-4 查询Product表中登记日期在2019年的商品信息
要求编写SQL语句,查询Product
表中登记日期在2019年的商品信息,并按销售价格降序排列。
表结构:
CREATE TABLE Product
(product_id CHAR(4) NOT NULL, --商品编号
product_name VARCHAR(100) NOT NULL, --商品名称
product_type VARCHAR(32) NOT NULL, --商品种类
sale_price INTEGER , --销售价格
purchase_price INTEGER , --进货价格
regist_date DATE , --登记日期
PRIMARY KEY (product_id));
表样例
Product
表
输出样例:
Product
表
select *
from Product
where year(regist_date)=2019
order by sale_price desc
10-5 查询所在城市为‘上海’或‘杭州’的仓库编号
本题目要求编写SQL语句,
检索出warehouse
表中``所在城市为‘上海’或‘杭州’的仓库编号```的记录。
提示:请使用SELECT语句作答。
表结构:
CREATE TABLE `warehouse` (
`Wno` varchar(10), --仓库编号
`City` varchar(20), --所在城市
`Size` int(11), --面积
);
表样例
warehouse
表:
Wno | City | Size |
---|---|---|
A01 | 杭州 | 15000 |
A02 | 建德 | 5000 |
B01 | 宁波 | 1200 |
B02 | 奉化 | 7500 |
C01 | 温州 | 10000 |
C02 | 乐清 | 8000 |
D01 | 绍兴 | 11000 |
输出样例:
Wno |
---|
A01 |
select Wno
from warehouse
where City='上海' or City='杭州'
10-6 查询销售过的产品编号
例如:本题目要求编写SQL语句,
检索出orders
表中所有销售过的产品编号
。
提示:请使用SELECT语句作答。
表结构:
请在这里写定义表结构的SQL语句。例如:
CREATE TABLE `orders` (
`OrdNo` int(11), --订单编号
`Sid` varchar(10), --供应商编号
`Eid` varchar(10), --职工编号
`Pid` varchar(20), --商品编号
`Price` decimal(10,2), --价格
`QTY` int(11), --订购数量
`ordDate` date --订单日期
);
表样例
orders
表:
OrdNo | Sid | Eid | Pid | Price | QTY | ordDate |
---|---|---|---|---|---|---|
1 | S01 | 0011 | P01 | 11 | 23 | 2022-02-13 |
2 | S02 | 0012 | P01 | 12 | 25 | 2022-02-14 |
3 | S03 | 0012 | P03 | 60 | 55 | 2022-02-14 |
输出样例:
请在这里给出输出样例。例如:
Pid |
---|
P01 |
P03 |
select distinct Pid
from orders
ps:distinct 的作用就是去重 注意 他们的顺序,distinct是在selsect的后面
10-7 查询每个供应商的信息及其供货的订单编号
本题目要求编写SQL语句,
查询每个供应商的信息及其供货的订单编号。
提示:请使用SELECT语句作答。
表结构:
CREATE TABLE `orders` (
`OrdNo` int(11), --订单编号
`Sid` varchar(10), --供应商编号
`Eid` varchar(10), --职工编号
`Pid` varchar(20), --商品编号
`Price` decimal(10,2), --价格
`QTY` int(11), --订购数量
`ordDate` date --订单日期
);
CREATE TABLE `supplier` (
`Sid` varchar(10), --供应商编号
`SName` varchar(50), --供应商名称
`City` varchar(20) --供应商地址
);
表样例
orders
表:
OrdNo | Sid | Eid | Pid | Price | QTY | ordDate |
---|---|---|---|---|---|---|
1 | S01 | 0011 | P01 | 11 | 23 | 2022-02-13 |
2 | S02 | 0012 | P01 | 12 | 25 | 2022-02-14 |
3 | S03 | 0012 | P03 | 60 | 55 | 2022-02-14 |
supplier
表:
Sid | SName | City |
---|---|---|
S01 | 东风机械厂 | 武汉 |
S02 | 天鹰紧固件厂 | 温州 |
S05 | 长城机电 | 杭州 |
输出样例:
b.Sid | SName | City, | OrdNo |
---|---|---|---|
S01 | 东风机械厂 | 武汉 | 1 |
S02 | 天鹰紧固件厂 | 温州 | 2 |
S02 | 天鹰紧固件厂 | 温州 | 3 |
select
orders.Sid,
supplier.SName,
supplier.City,
orders.OrdNo
from orders
join supplier on supplier.Sid=orders.Sid
10-8 计算Product表中销售价格的最大值和进货价格的最小值
要求编写SQL语句,查询Product
表中销售价格的最大值和进货价格的最小值。
表结构:
CREATE TABLE Product
(product_id CHAR(4) NOT NULL, --商品编号
product_name VARCHAR(100) NOT NULL, --商品名称
product_type VARCHAR(32) NOT NULL, --商品种类
sale_price INTEGER , --销售价格
purchase_price INTEGER , --进货价格
regist_date DATE , --登记日期
PRIMARY KEY (product_id));
表样例:
Product
表
输出样例:
Product
表
SELECT
MAX(sale_price) AS top_sale,
MIN(purchase_price) AS bottom_pur
FROM
Product;
as是起别名的意思
10-9 查询每名职工的工号和姓名及所属的仓库编号和所在城市
本题目要求使用外连接来编写SQL语句,
查询每名职工的工号和姓名及所属的仓库编号和所在城市。
提示:请使用SELECT语句作答。
表结构:
CREATE TABLE `employee` (
`Eid` varchar(10), --职工编号
`EName` varchar(30), --职工姓名
`Wno` varchar(10), --所在仓库
`Salary` int(11) --职工工资
);
CREATE TABLE `warehouse` (
`Wno` varchar(10), --仓库编号
`City` varchar(20), --所在城市
`Size` int(11), --面积
);
表样例
employee
表:
Eid | EName | Wno | Salary |
---|---|---|---|
0010 | 张三 | A01 | 3600 |
0011 | 刘勇 | A01 | 2700 |
0012 | 张立 | A01 | 8500 |
0021 | 刘靖 | A02 | 2500 |
0022 | 王强 | A02 | 5600 |
0023 | 李军 | 5000 | |
0031 | 王林 | 3500 |
warehouse
表:
Wno | City | Size |
---|---|---|
A01 | 杭州 | 15000 |
A02 | 建德 | 5000 |
B01 | 宁波 | 1200 |
B02 | 奉化 | 7500 |
C01 | 温州 | 10000 |
C02 | 乐清 | 8000 |
D01 | 绍兴 | 11000 |
输出样例:
Eid | EName | Wno | City |
---|---|---|---|
0010 | 张三 | A01 | 杭州 |
0011 | 刘勇 | A01 | 杭州 |
0012 | 张立 | A01 | 杭州 |
0021 | 刘靖 | A02 | 建德 |
0022 | 王强 | A02 | 建德 |
0023 | 李军 | ||
0031 | 王林 |
select employee.Eid,employee.EName,employee.Wno,warehouse.City
from employee
left join warehouse on employee.Wno = warehouse.Wno
left的作用就是让它没有对应的时候默认为null
10-10 查询所有产品名中包含’螺母’的产品种类数
本题目要求编写SQL语句,
检索出product
表中所有产品名中包含’螺母’的产品种类数。
提示:请使用SELECT语句作答。
表结构:
请在这里写定义表结构的SQL语句。例如:
CREATE TABLE `product` (
`Pid` varchar(20), --商品编号
`PName` varchar(50), --商品名称
`Weight` decimal(10, 3) --重量
);
表样例
product
表:
Pid | PName | Weight |
---|---|---|
P01 | M6螺栓 | 30 |
P02 | M8螺栓 | 40 |
P03 | M16螺栓 | 140 |
P04 | 螺帽 | 30 |
P05 | 螺母 | 45 |
P06 | 垫片 | 10 |
P07 | 铰链 | 70 |
P21 | 螺钉 | 3 |
输出样例:
请在这里给出输出样例。例如:
count(*) |
---|
1 |
select count(*)
from product
where PName like '%螺母%'