数据库的查询6

上传人:mg****85 文档编号:50142111 上传时间:2018-08-07 格式:PPT 页数:62 大小:555.50KB
返回 下载 相关 举报
数据库的查询6_第1页
第1页 / 共62页
数据库的查询6_第2页
第2页 / 共62页
数据库的查询6_第3页
第3页 / 共62页
数据库的查询6_第4页
第4页 / 共62页
数据库的查询6_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《数据库的查询6》由会员分享,可在线阅读,更多相关《数据库的查询6(62页珍藏版)》请在金锄头文库上搜索。

1、 项目五 WebShop数据库的查询项目任务:【任务1】单表查询 【任务3】子查询。 【任务4】联合查询【任务2】连接查询【任务5】分布式查询【任务6】在SSMS中实现查询【任务1】单表查询 基本语句格式: SELECT ALL|DISTINCT .FROM , . WHERE GROUP BY HAVING ORDER BY ASC | DESC 【任务1-1】选择列【任务1-1-1】(选择所有列)网站销售部管理人员或 采购部管理人员需要了解所有商品的详细信息。 SELECT * FROM Goods课堂练习1查询WebShop数据库中会员信息表Customers中的所有内容SELECT *

2、 FROM Customers【任务1-1-2】(选择指定列)网站管理人员 在了解商品信息时只需要了解所有商品的商品号 、商品名称和商品单价。 SELECT g_ID,g_Name,g_PriceFROM Goods课堂练习1查询WebShop数据库中会员信息表Customers中会员 的编号(c_ID)、用户名(c_Name)、真实姓名( c_TrueName)和密码(c_Password)。 SELECT c_ID,c_Name,c_TrueName,c_Password FROM Customers课堂练习2查询WebShop数据库中会员信息表Customers中会员的编号(c_ID)、

3、用户名(c_Name)、真实姓名(c_TrueName)、年龄(c_Age)和密码(c_Password)。SELECT c_ID,c_Name,c_TrueName,c_Password, YEAR(GetDate()-YEAR(c_birth) c_AgeFROM Customers【任务1-1-3】(计算列)现在需要了解Goods 表中所有商品的商品号、商品名称和商品总额。 SELECT g_ID,g_Name,g_Price*g_NumberFROM Goods【任务1-1-4】(使用列别名)要求了解所有商 品的商品号、商品名称和总价值,以汉字标题商品 号、商品名称和总价值表示g_ID

4、、g_Name和 g_Price*g_Number。 SELECT g_ID 商品号,g_Name 商品名称,g_Price*g_Number 总价值FROM Goods【提示】用户可以通过指定别名来改变查询结果的列标题。指定别名方法:“列名 列标题” ;“列名 AS 列标题” ;“列标题=列名”SELECT g_ID 商品号,g_Name AS 商品名称,总价值=g_Price*g_NumberFROM Goods课堂练习1查询WebShop数据库中会员信息表Customers中会员的编号(c_ID)、用户名(c_Name)、真实姓名(c_TrueName)、年龄和密码(c_Password

5、)并以汉字标题显示列名。SELECT 编号=c_ID,c_Name AS 用户名,c_TrueName 真实姓名,c_Password AS 密码, YEAR(GetDate()-YEAR(c_birth) 年龄FROM Customers课堂练习2查询WebShop数据库中订单表Orders中订单编号(o_ID)、订单日期(o_Date)、订单员工(o_ID)、并以汉字标题显示列名。SELECT o_ID 订单编号,o_Date 订单日期,o_ID 订单员工FROM Orders【任务1-2】选择行(查询记录)查询满足条件的记录通过WHERE子句实现。 在WHERE子句中,使用关系运算符进行

6、条件的 判断【任务1-2-1】(简单查询)查询商品信息表中 的“热点”商品的所有信息。 SELECT *FROM GoodsWHERE g_Status=热点课堂练习1查询员工表中的所有记录。 SELECT *FROM Employees课堂练习2查询WebShop数据库中“VIP会员”的详细情况。 SELECT *FROM CustomersWHERE c_Type=VIP【任务1-2-2】(复合条件查询)查询商品类别为“01”, 商品单价在2500元以上的商品信息,并以汉字标题显示商 品号、商品名称、商品类别号和价格SELECT g_ID 商品号, g_Name 商品名称, t_ID 商品

7、类别号, g_Price 价格 FROM Goods WHERE t_ID =01 AND g_Price2500【任务1-2-3】(复合条件查询)查询“湖南”省的所有男 性的会员或者是年龄在30岁以下的会员的会员号、会员名 称、性别、籍贯和年龄。 SELECT c_ID 会员号, c_Name 会员名称, c_Gender 性别, c_Address 籍贯,YEAR(GetDate()-YEAR(c_birth) 年龄 FROM Customers WHERE (c_Gender =男 AND LEFT(c_Address,2)=湖南)OR (YEAR(GetDate()-YEAR(c_bi

8、rth)4000查询进货总金额小于10000元的商品的商品名称、 商品类别、商品价格、商品数量 课堂练习3SELECT g_Name 商品名称, g_ID 商品类别,g_Price 商品价格,g_Number 商品数量 FROM Goods WHERE g_Price*g_Number ESCAPE“”SELECT *FROM GoodsWHERE g_Name LIKE 三星%【任务1-2-9】(模糊查询)了解姓“黄”且名字中只有两 个汉字的会员的会员名、真实姓名、电话和电子邮箱。 SELECT c_Name, c_TrueName, c_Phone, c_EmailFROM Custome

9、rsWHERE c_TrueName LIKE 黄_【任务1-2-10】(模糊查询)了解商品名称中包含有 “520”字样商品,要求查询该商品的商品号、商品名称、商 品单价和商品折扣。 SELECT g_ID,g_Name, g_Price, g_Discount FROM GoodsWHERE g_Name LIKE %520%课堂练习1查询所有使用163邮箱的会员的详细信息SELECT *FROM CustomersWHERE c_Email LIKE %163%课堂练习2查询姓“黄”客户的基本信息 SELECT *FROM CustomersWHERE c_TrueName LIKE 黄%

10、【任务1-2-11】(涉及空值查询)查询暂时没有商品图 片的商品信息。 SELECT *FROM GoodsWHERE g_Image IS NULL课堂练习1查询固定电话不为空的员工信息。 SELECT *FROM EmployeesWHERE e_Phone IS NOT NULL【任务1-2-12】(消除重复行)了解在WEBSHOP进行 购物并下了订单的会员编号,如果一个会员下了多个订单。 只要显示一次会员编号SELECT DISTINCT e_IDFROM Orders课堂练习1查询订单信息表中所有送货上门的客户编号( 去掉重复值)。 SELECT DISTINCT c_IDFROM

11、Orders【任务1-2-13】(返回前N行)了解前8种商品的信息基本语句格式:TOP n PERCENTSELECT TOP 8 *FROM Goods课堂练习1查询最先注册的10%的会员详细信息 SELECT TOP 10 PERCENT *FROM Customers课堂练习2SELECT TOP 2 u_ID 用户编号,u_Name 用户名称FROM Users查询用户信息表中前2个用户的用户编号、用户名称【任务1-3】ORDER 子句ORDER BY子句用于按查询结果中的一列或多列对查询结果进行排序。基本语法格式如下:ORDER BY 列名列表 ASC | DESC参 数功 能列名列

12、表指定要排序的列,可以是多列。如果是多列,系统统先 按照第一列的顺顺序排列,当该该列出现现重复值时值时 ,再 按照第二列的顺顺序排列,依此类类推。列的数据类类型 不能为为ntext、text、image型 ASC指明查询结查询结 果按升序排列,是系统统默认值认值DESC指明查询结查询结 果按降序排列,NULL被认为认为 是最小的 值值【提示】 中英文字按照ASCII码大小进行比较 数值型根据其数值大小进行比较 日期型数据根据数值大小进行比较 逻辑性数据“false”小于“true”【任务1-3-1】(ORDER 子句)了解商品类别号 为“01”的商品的商品号、商品名称和商品单价,并 要求根据商

13、品的价格进行降序(价格由高到低)排 列。 SELECT g_ID,g_Name, g_PriceFROM GoodsWHERE t_ID=01ORDER BY g_Price DESC【任务1-3-2】(ORDER子句)了解价格在2500元以上的 商品的商品类别、商品号、商品名称、商品类别号和商品 单价信息,并要求按类别号升序排列;如果是同一类别的 商品,则按价格降序排列。SELECT t_ID,g_ID,g_Name, g_Price FROM Goods WHERE g_Price2500 ORDER BY t_ID,g_Price DESC课堂练习1对会员信息表按年龄进行降序排列SELE

14、CT *FROM CustomersORDER BY YEAR(GetDate()-YEAR(c_birth) DESC课堂练习2对会员信息表按会员类型进行升序,类型相同的 按年龄进行降序排列SELECT *FROM CustomersORDER BY c_TYPE YEAR(GetDate()-YEAR(c_birth) DESC【任务1-4】GROUP BY 子句GROUP BY子句用来对查询结果进行分组其语法格式如下:GROUP BY ALL 列名列表 WITH CUBE | ROLLUP 聚合函数的功能是对整个表或表中的列组进行汇总、计算,求平均值或总和 常见的聚合函数及其功能 函 数

15、 格 式功 能COUNT(DISTINCT|ALL*)计计算记录记录 个数COUNT(DISTINCT|ALL)计计算某列值值个数AVG(DISTINCT|ALL )计计算某列值值的平均值值MAX(DISTINCT|ALL)计计算某列值值的最大值值MIN(DISTINCT|ALL)计计算某列值值的最小值值SUM(DISTINCT|ALL)计计算某列值值的和【任务1-4-1】(简单分组)了解每一类别的 商品总数SELECT t_ID 类别号,COUNT(t_ID) 商品数FROM GoodsGROUP BY t_ID课堂练习1统计会员信息表是中男、女会员的总人数SELECT c_Gender 性别 ,COUNT(c_Gender ) 人数FROM CustomersGROUP BY c_Gender课堂练习2按照商品状态分别统计“热点”、“促销”、“推 荐”商品的数量SELECT g_Status 商品状态, COUNT(g_Status ) 数量FROM GoodsGROUP BY g_Status 【任务1-4-2】(分组后排序)了解每一个订 单的总金额,并根据订单总额进行升序排列SELECT o_ID 订单编号, SUM(d_Price*d_Number ) 总金额FROM OrderDetailsGROUP BY o_IDORDER BY SUM(d_Price

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号