实验二  排序检索数据和数据过滤

一、实验目的

1、进一步掌握查询的方法,对查询的结果根据需要进行排序。

2、掌握使用where子句知道搜索条件的方法。

3、熟练掌握使用and操作符和or操作符进行查询。

二、实验理论基础及教材对应关系

1、实验理论基础:

(1)select语句中的order by 子句;

(2)where子句;

(3)and、or、in和not操作符。

2、本实验内容主要对应于教材第5章、第6章和第7章的内容。

三、实验内容与步骤

1、对查询的结果进行排序:

输入命令:

SELECT    prod_name

FROM        products

ORDER  BY  prod_name;

回车后可看到如下的结果:

2、指定排序方向

从产品表中找出产品的标号、产品价格、产品名,并按产品价格从高到低排序。

输入命令:

SELECT   prod_id, prod_price, prod_name

FROM       products

ORDER  BY  prod_price  DESC

回车后,看看运行的结果。

3、order by 和limit的组合:找出产品价格最贵的价格。

输入命令:

SELECT   prod_price

FROM      products

ORDER BY prod_price DESC

LIMIT  1;

回车后,看看运行的结果。

4、where子句:

(1)找出产品名为“fuses”的产品名和价格

输入命令:

SELECT    prod_name, prod_price

FROM       products

WHERE    prod_name = 'fuses';

注意:由于表中的数据在字符前后有空格,因此应将条件写成 ‘ fuses  ’,即在fuses前后加一个空格,否则将找不到结果。

回车后,看看运行的结果。

(2)找出产品名小于或等于10美元的产品名和价格

输入命令:

SELECT   prod_name, prod_price

FROM       products

WHERE    prod_price <= 10;

回车后,看看运行的结果。

5.and操作符:

找出供应商1003制造且价格小于等于10美元的所有产品的名称和价格。

输入命令:

SELECT    prod_id, prod_price, prod_name

FROM       products

WHERE     vend_id = 1003 AND prod_price <= 10;

回车后,看看运行的结果。

6. or操作符:

找出供应商1002或者供应商1003制造所有产品的名称和价格.

输入命令:

SELECT    prod_name, prod_price

FROM      products

WHERE   vend_id = 1002 OR vend_id = 1003;

回车后,看看运行的结果。

7.in操作符:

输入命令:

SELECT prod_name, prod_price

FROM products

WHERE vend_id IN (1002,1005)

回车后,看看运行的结果。

8. not操作符

找出不是供应商1002和1003提供的任意产品

输入命令:

SELECT prod_name, prod_price

FROM products

WHERE vend_id NOT IN (1002,1003)

ORDER BY prod_name;

回车后,看看运行的结果。

四、实验材料的提交与成绩评定

1、本实验的实验报告一份(电子版或纸质版一份,具体形式由任课教师确定,格式参考学院统一实验报告)

2、实验源程序一份,请表明题号(电子版)

备注:做下一次实验之时提交上一次实验的材料,由各班学习委员以班为单位收集并上交任课教师。