- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
任务3-1:单表查询(T-SQL)任务3-2:多表查询(T-SQL)任务3-3:嵌套查询(T-SQL);1、SELECT语句;2、基本查询;1)选择列;【计算列】例3.3 从Product表中检索出产品ID(ProductID)、产品名称(ProductName)、产品单价(Price)、产品库存量(Stocks)及产品的总价值。;2)选择行;【使用逻辑运算符】 逻辑运算符包括:逻辑与AND、逻辑或OR、逻辑非NOT;
; 格式: column_name [ NOT ] BETWEEN expression1 AND expression2;等价于:; 在SQL Server中,用NULL表示空值,它仅仅是一个符号,不等于空格,也不等于0,空值判定的语法格式如下:
;SELECT SaleID,SaleName,Sex,Birthday,Address FROM Seller
ORDER BY Birthday DESC;4)使用TOP和DISTINCT关键字; SELECT [ ALL | DISTINCT ] column_name1[,column_name2,…]FROM table_nameWHERE search_condition;课堂练习;; T-SQL扩展了连接的形式,引入了JOIN…ON关键字连接形式,从而使表的连接运算能力得到了增强。
JOIN…ON关键字放在FROM子句中,命令格式如下:
FROM 表名1 [[INNER]|{|LEFT|RIGHT|FULL} [OUTER]] JOIN 表名2 ON 连接条件]
这种连接形式通过FROM给出连接类型,用JOIN表示连接,用ON短语给出连接条件。
JOIN提供了多种类型的连接方法:内连接、外连接和交叉连接。它们之间的区别在于:从相互关联的不同表中选择用于连接的行时所采用的方法不同。
内连接是最常见的一种连接,也被称为普通连接或自然连接,它是系统默认形式,在实际使用中可以省略INNER关键字。 ; 所谓内连接是多个表通过连接条件中共享列的值进行的比较连接。当未指明连接类型时,默认为内连接。内连接值显示两个表中所有匹配数据的行。;为了增加可读性,可以使用表的别名。表的别名的命令语法格式为:;2)外连接(OUTER JOIN); 【右外连接(RIGHT OUTER JOIN)】右外连接即在连接两表时,不管左表中是否有匹配数据,结果将保留右表中的所有行。;2、分组与汇总;例3.33 统计Product表中,库存量200的产品数量。
SELECT COUNT(ProductID) FROM Product WHERE Stocks200
例3.34 统计Product表中的产品种数。
SELECT COUNT(*) FROM Product;【注意】
使用GROUP BY子句为每一个组产生一个汇总结果,每个组只返回一行,不返回详细信息。
SELECT子句中指定的列必须是GROUP BY子句中指定的列,或者是和聚合函数一起使用。
如果包含WHERE子句,则只对满足WHERE条件的行进行分组汇总。
如果GROUP BY子句使用关键字ALL,则WHERE子句将不起作用。
HAVING子句可进一步排除不满足条件的组。
当同时存在GROUP BY子句、HAVING子句和WHERE子句时,其执行顺序为:先WHERE子句,后GROUP BY子句,再HAVING子句。即先用WHERE子句过滤不符合条件的数据记录,接着用GROUP BY子句对余下的数据记录按指定列分组、汇总,最后再用HAVING子句排除不符合条件的组。;例3.37 对所有价格大于5元且组平均价格大于15元的价格表目,列出所有的产品的类型、平
均价格及总库存。
SELECT CategoryID,AVG(Price) AS 平均价格,SUM(Stocks) AS 总库存
FROM Product
WHERE Price5
GROUP BY CategoryID
HAVING AVG(Price)15;类似于总计;例3.40 用COMPUTE BY子句按类别ID汇总出Product表中每类产品的平均价格和总库存量。
SELECT CategoryID,ProductID,Price,Stocks FROM Product
ORDER BY CategoryID,Price
COMPUTE AVG(Price),SUM(Stock
文档评论(0)