第1关:基本SELECT查询

任务描述

本关任务:

用 SELECT 语句检索数据表中指定字段的数据;

用 SELECT 语句检索数据表中所有字段的数据。

相关知识

为了完成本关任务,你需要掌握:1.如何获取数据表中指定字段的数据,2.如何获取数据表中的所有数据。

若想使用 SELECT 语句来检索数据表中的数据,你至少得弄清楚两个重要的信息:(1) 你想检索的是什么?(2) 你想检索的内容它在什么地方?

检索数据表中一个字段的内容

我们将从最简单的 SELECT 语句开始学习。

语法规则为:

SELECT 字段名 FROM 表名

编程要求

我们已经为你建好了数据库与数据表,并添加了相应的数据内容。

你只需根据右侧提示,完成以下任务:

补全右侧代码片段中 retrieving multiple column 下 Begin-End 区间的代码,检索表 Products 中字段 prod_name 和 prod_price 的所有内容;

补全右侧代码片段中 retrieving all column 下 Begin-End 区间的代码,检索表 Products 中所有字段的内容。

其中表 Products 的结构如下图所示;

sql server查找数据 sql server 数据查询_数据


测试说明

测试过程:

本关涉及到的测试文件是 step1_test.sh ,平台将运行用户补全的 step1.sql 文件,得到数据;

将得到的数据与答案比较,判断代码是否正确。

如果操作正确,你将得到如下的结果:

sql server查找数据 sql server 数据查询_数据_02


参考代码:

USE Mall
GO
SET NOCOUNT ON
---------- retrieving multiple column ----------
-- ********** Begin ********** --
select prod_name,prod_price from Products
-- ********** End ********** --
GO
---------- retrieving all column ----------
-- ********** Begin ********** --
SELECT * FROM Products
-- ********** End ********** --
GO

第2关:带限制条件的查询和表达式查询

任务描述

本关任务:

查询数据表中的指定字段的数据;

查询数据表中指定字段运算后的数据。

相关知识

为了完成本关任务,你需要掌握:1.使用限制关键字查询数据表中的指定字段的内容,2.使用运算符查询数据表中指定字段运算后的内容。

带限制条件的查询

SELECT 语句可以帮你返回所有匹配的内容,甚至整张表的内容。但是如果你仅仅是想要第一行的数据或者前几行的数据怎么办呢?好消息是我们可以通过限制条件来查询,不过限制条件的语法在各个数据库中的语法是不同的。在 SQL Server 中:

语法规则为:

SELECT TOP 行数 字段名 FROM 表名

编程要求

我们已经为你建好了数据库与数据表,并添加了相应的数据内容。

你只需:

补全右侧代码片段中 retrieving with limited 下 Begin-End 区间的代码,检索表 Products 中字段 prod_name 的前两项内容;

补全右侧代码片段中 retrieving with expression 下 Begin-End 区间的代码,检索表 Products 中字段 prod_price 的内容,并检索到字段 prod_price 打8折后的价钱,命名该打折后的价格为 discount_price 。

其中表 Products 的结构如下图所示:

sql server查找数据 sql server 数据查询_sql server查找数据_03


测试说明

测试过程:

本关涉及到的测试文件是 step2_test.sh ,平台将运行用户补全的 step2.sql 文件,得到数据;

将得到的数据与答案比较,判断代码是否正确。

如果操作正确,你将得到如下的结果:

sql server查找数据 sql server 数据查询_补全_04


参考代码:

USE Mall
Go
SET NOCOUNT ON
---------- retrieving with limited ----------
-- ********** Begin ********** --
select top 2 prod_name from Products
-- ********** End ********** --
GO
---------- retrieving with expression ----------
-- ********** Begin ********** --
select  prod_price,prod_price*0.8 discount_price from Products
-- ********** End ********** --
GO

第3关:使用WHERE语句进行检索

任务描述

本关任务:使用 WHERE 语句和逻辑表达式,检索数据表中指定字段的符合条件的数据。

相关知识

为了完成本关任务,你需要掌握:如何使用 WHERE 语句和操作符来选择符合条件的数据。

在实际情况中,我们不仅需要对某字段的全部数据进行检索,更多的是需要对符合我们需求的数据进行检索。SQL 语言的发明者当然想到了这些,为我们提供了更多的方法来检索你想要的数据。

WHERE 语句就是这样一种存在,只要把你的需求正确地放在 WHERE 后边,它就能帮你检索到你想要的内容。

编程要求

我们已经为你建好了数据库与数据表,并添加了相应的数据内容。

你只需:

补全右侧代码片段中 retrieving with range 下 Begin-End 区间的代码,检索表 Products 中字段 prod_price 价钱介于 3 和 5 的内容,要求显示出商品名称和价钱;

补全右侧代码片段中 retrieving with nomatches 下 Begin-End 区间的代码,检索表 Products 中除了 Lion toy 的商品名称和价钱。

其中表 Products 的内容如下图所示:

sql server查找数据 sql server 数据查询_sql server查找数据_05


测试说明

测试过程:

本关涉及到的测试文件是 step3_test.sh ,平台将运行用户补全的 step3.sql 文件,得到数据;

将得到的数据与答案比较,判断代码是否正确。

如果操作正确,你将得到如下的结果:

sql server查找数据 sql server 数据查询_数据_06


参考代码:

USE Mall
Go
SET NOCOUNT ON
---------- retrieving with range ----------
-- ********** Begin ********** --
select prod_name,prod_price
from Products
where prod_price between 3 and 5
-- ********** End ********** --
GO
---------- retrieving with nomatches ----------
-- ********** Begin ********** --
select prod_name,prod_price
from Products
where prod_name!='Lion toy'
-- ********** End ********** --
GO