【SQL刷题】Day9----SQL过滤数据专项练习

博主昵称:跳楼梯企鹅
博主主页面链接:博主主页传送门

博主专栏页面连接:专栏传送门--网路安全技术
创作初心:本博客的初心为与技术朋友们相互交流,每个人的技术都存在短板,博主也是一样,虚心求教,希望各位技术友给予指导。
博主座右铭:发现光,追随光,成为光,散发光;
博主研究方向:渗透测试、机器学习 ;
博主寄语:感谢各位技术友的支持,您的支持就是我前进的动力 ;

学习网站跳转链接:牛客刷题网

前言

给大家推荐一款很好的刷题软件牛客刷题网---一起学SQL

 博主为什么喜欢用这个网站学习呢?

主要原因有三点:

1.内部含有大量面试题库

2.覆盖行业范围比较全面

3.刷题的题目是按照简单到难的过程

一、过滤数据

简介:数据库表一般包含大量的数据,很少需要检索表中的所有行。通常只是根据特定的需要提取表数据的子集。因此检索所需数据时需要指定搜索条件,搜索条件也称为过滤条件。

语法:

#column_name=列名称, table_name=表名称, operator=运算符,value=值

SELECT column_name,column_name

FROM table_name

WHERE column_name operator value

方式:WHERE函数

在SELECT语句中,WHERE子句用于规定选择的标准,即有条件地从表中选取数据。

SELECT name,id

FROM students

WHERE id = 1

 

等等......

二、刷题

1.刷题一

(1)题目

题目:返回固定价格的产品

描述:从 Products 表中检索产品 ID(prod_id)和产品名称(prod_name),只返回价格为 9.49 美元的产品。

(2)难易程度

难易程度:入门

(3)示例

输入:

DROP TABLE IF EXISTS `Products`;
CREATE TABLE IF NOT EXISTS `Products` (
  `prod_id` VARCHAR(255) NOT NULL COMMENT '产品 ID',
  `prod_name` VARCHAR(255) NOT NULL COMMENT '产品名称',
  `prod_price` DOUBLE NOT NULL COMMENT '产品价格'
);
INSERT INTO `Products` VALUES ('a0018','sockets',9.49),
('a0019','iphone13',600),
('b0019','gucci t-shirts',1000);

输出:

a0018|sockets

(4)代码

select prod_id,prod_name
from Products 
where prod_price = '9.49'

(5)运行截图

 2.刷题二

(1)题目

题目:返回更高价格的产品

描述:编写 SQL 语句,从 Products 表中检索产品 ID(prod_id)和产品名称(prod_name),只返回价格为 9 美元或更高的产品。

 (2)难易程度

难易程度:简单

(3)示例

输入:

DROP TABLE IF EXISTS `Products`;
CREATE TABLE IF NOT EXISTS `Products` (
`prod_id` VARCHAR(255) NOT NULL COMMENT '产品 ID',
`prod_name` VARCHAR(255) NOT NULL COMMENT '产品名称',
`prod_price` DOUBLE NOT NULL COMMENT '产品价格'
);
INSERT INTO `Products` VALUES ('a0011','usb',9.49),
('a0019','iphone13',600),
('b0019','gucci t-shirts',1000);

输出:

a0011|usb
a0019|iphone13
b0019|gucci t-shirts

(4)代码

select prod_id,prod_name
from Products
where prod_price >= 9

(5)运行截图

3.刷题三

(1)题目

题目:返回产品并且按照价格排序

描述:编写 SQL 语句,返回 Products 表中所有价格在 3 美元到 6 美元之间的产品的名称(prod_name)和价格(prod_price),然后按价格对结果进行排序

(2)难易程度

难易程度:简单

(3)示例

输入:

DROP TABLE IF EXISTS `Products`;
CREATE TABLE IF NOT EXISTS `Products` (
`prod_id` VARCHAR(255) NOT NULL COMMENT '产品 ID',
`prod_name` VARCHAR(255) NOT NULL COMMENT '产品名称',
`prod_price` DOUBLE NOT NULL COMMENT '产品价格'
);
INSERT INTO `Products` VALUES ('a0011','egg',3),
('a0019','sockets',4),
('b0019','coffee',15);

输出:

egg|3.000
sockets|4.000

(4)代码

select prod_name, prod_price
from Products 
where prod_price between '3' and '6'
order by prod_price

(5)运行截图

4.刷题四

(1)题目

题目:返回更多的产品

描述:从 OrderItems 表中检索出所有不同且不重复的订单号(order_num),其中每个订单都要包含 100 个或更多的产品。

(2)难易程度

难易程度:入门

(3)示例

输入:

DROP TABLE IF EXISTS `OrderItems`;
CREATE TABLE IF NOT EXISTS `OrderItems`(
	order_num VARCHAR(255) NOT NULL COMMENT '商品订单号',
	quantity VARCHAR(255) NOT NULL COMMENT '商品数量'
);
INSERT `OrderItems` VALUES ('a1','105'),('a2','1100'),('a2','200'),('a4','1121'),('a5','10'),('a2','19'),('a7','5')

输出:

a1
a2
a4

(4)代码

select order_num
from OrderItems
group by order_num
having  sum(quantity) >= 100

(5)运行截图

三、小结

本片文章为MySQL刷题系列文章,第九天!

欢迎小伙伴一起来刷题,点击右边链接牛客------刷题网

猜你喜欢

转载自blog.csdn.net/weixin_50481708/article/details/126535022