数据库技术及应用课程实验 - 图文 联系客服

发布时间 : 星期二 文章数据库技术及应用课程实验 - 图文更新完毕开始阅读4f7aff7da26925c52cc5bfc0

实验4 数据库查询

实验目的

(1)掌握SELECT语句的基本语法和查询条件表示方法; (2)掌握连接查询的表示; (3)掌握嵌套查询的表示; (4)掌握数据汇总的方法;

(5)掌握GROUP BY子句的作用和使用方法; (6)掌握ORDER BY子句的作用和使用方法。

实验要求

(1)了解SELECT语句的基本语法格式; (2)了解SELECT语句的执行方法; (3)了解查询条件种类和表示方法; (4)了解连接查询的表示; (5)了解嵌套查询的表示方法; (6)了解数据汇总的方法;

(7)了解SELECT语句的GROUP BY子句的作用和使用方法; (8)了解SELECT语句的ORDER BY子句的作用。

实验步骤

使用T-SQL的SELECT查询语句,在数据库CPXS的CP表、XSS表和XSCP表进行各种查询,包括单表查询、连接查询、嵌套查询,并进行数据汇总以及使用GROUP BY子句、ORDER BY子句对查询结果进行分组和排序处理。 1.SELECT语句的基本使用

以下的所有查询都在查询分析器中执行,在查询分析器中将当前数据库设为CPXS。 (1)查询每种产品的所有数据。

? 在查询分析器的输入窗口输入如下的语句并执行:

SELECT *

FROM cp

? 用SELECT语句查询XSS表和XSCP表的所有记录。 (2)查询每种产品的价格和库存量。

? 在查询分析器的输入窗口输入如下的语句并执行:

SELECT JG,KCL

FROM cp

? 用SELECT语句查询XSS表和XSCP表的一列或若干列。 (3)查询XSBH为000001的销售商的地区和电话。

? 在查询分析器的输入窗口输入如下的语句并执行:

SELECT DQ ,DH

FROM xss

WHERE XSBH=’000001’

? 用SELECT语句查询CP表和XSCP表中满足指定条件的一列或若干列。

(4)查询XSS表中的XSBH为000001的销售商的地区和电话,使用AS子句将结果中各列的标题分别指定为地区、电话。

9

? 在查询分析器的输入窗口输入如下的语句并执行:

SELECT DQ AS 地区,DH AS 电话

FROM xss

WHERE XSBH=’000001’

? 查询CP表中的CPBH为100006的产品的价格和库存量,使用AS子旬将结果中各列的标题分别指定为价格、库存量。 (5)计算所有产品的总价值。

? 在查询分析器的输入窗口输入如下的语句并执行:

SELECT CPBH,总价值=JG*KCL

FROM cp

? 计算所有产品的总库存量。

(6)找出所有名称中含“电”的产品的编号和价格。 ? 在查询分析器的输入窗口输入如下的语句并执行:

SELECT CPBH,JG

FROM cp

WHERE CPMC LIKE’%电%’

? 找出所有名称中含“家电”的销售商的编号和地区。

(7)找出所有价格在1500~2800之间的产品编号和产品名称。 ? 在查询分析器的输入窗口输入如下的语句并执行:

SELECT CPBH,CPMC

FROM cp

WHERE JG BETWEEN 1500 AND 2800

? 找出所有库存量在10(含10)以上的产品编号和产品名称。 2.连接查询

(1)查询每种产品的情况以及其销售的情况。

? 在查询分析器的输入窗口输入如下的语句并执行:

SELECT CP.*,XSCP.*

FROM cp,xscp

WHERE cp.CPBH=xscp.CPBH

? 查询每个销售商的情况以及其销售产品的情况。 (2)查找价格在2000及以上的产品名称及其销售情况。 ? 在查询分析器的输入窗口输入如下的语句并执行:

SELECT CPMC,XSMC,XSSJ,SL,JE

FROM cp,xscp,xss

WHERE cp.CPBH=xscp.CPBH AND xss.XSBH=xscp.XSBH AND JG>=2000

? 查找库存量在10及以上的产品名称及其销售情况。

(3)查询在2004年7月1日以前销售的产品名称及其销售情况。 在查询分析器的输入窗口输入如下的语句并执行:

SELECT CPMC,XSMC,XSSJ,SL,JE

FROM cp,xscp,xss

WHERE cp.CPBH=xscp.CPBH AND xss.XSBH=xscp.XSBH AND XSSJ<=’20040701’

3.嵌套查询

(1)查找与“广电公司”在同一地区的销售商的情况。 在查询分析器的输入窗口输入如下的语句并执行:

10

(2)查找销售了“彩色电视机”产品的销售商名称。 在查询分析器的输入窗口输入如下的语句并执行:

(3)查找出售了所有000001销售商所出售的全部产品的销售商名称。 在查询分析器的输入窗口输入如下的语句并执行:

(4)查找未销售“台式电脑”产品的销售商情况。 ? 在查询分析器的输入窗口输入如下的语句并执行:

? 查询未销售任何产品的销售商名称。 4.数据汇总

(1)求所有产品的平均价格。

在查询分析器的输入窗口输入如下的语句并执行:

11

SELECT AVG(JG) AS ‘产品平均价格’

FROM cp

(2)查询产品的最高价格和最低价格。

在查询分析器的输入窗口输入如下的语句并执行:

SELECT MAX(JG) AS ‘产品最高价格’, MIN(JG) AS ‘产品最低价格’

FROM cp

(3)求地区为南京的总销售商数。

? 在查询分析器的输入窗IZl输入如下的语句并执行:

SELECT COUNT(XSBH)

FROM xss

WHERE DQ=’南京’

? 统计销售商总数。 (4)统计销售总值。

? 在查询分析器的输入窗口输入如下的语句并执行:

SELECT AVG(JE) AS ‘销售总值’

FROM xscp

? 统计2004年1月1日以来的销售总值。 5.GROUP BY、ORDER BY子句的使用

(1)查询各地区的销售商数。

在查询分析器的输入窗口输入如下的语句并执行:

SELECT DQ,COUNT(XSBH)

FROM xss

GROUP BY DQ

(2)求被销售产品的名称和销售该种产品的销售商数。 在查询分析器的输入窗口输入如下的语句并执行:

SELECT CPMC AS ‘产品名称,COUNT(XSBH) AS ‘销售商数’

FROM xscp,cp GROUP BY CMPC

(3)将各产品的情况按价格由低到高排列。

在查询分析器的输入窗口输入如下的语句并执行:

SELECT *

FROM cp

ORDER BY JG

(4)将各产品的情况按总值由低到高排列。

在查询分析器的输入窗口输入如下的语句并执行: SELECT *

FROM cp

ORDER BY JG*KCL

(5)将各销售商按总销售额值由低到高排序。

在查询分析器的输入窗口输入如下的语句并执行:

SELECT XSBH,SUM(JE)

FROM xscp

GROUP BY XSBH ORDER BY SUM(JE)

12