SQL中的select(zero).doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SQL中的select(zero)

SQL?里面最常用的命令是?SELECT?语句,用于检索数据。语法是:? SELECT?[?ALL?|?DISTINCT?[?ON?(?expression?[,?...]?)?]?] ????*?|?expression?[?AS?output_name?]?[,?...] ????[?INTO?[?TEMPORARY?|?TEMP?]?[?TABLE?]?new_table?] ????[?FROM?from_item?[,?...]?] ????[?WHERE?condition?] ????[?GROUP?BY?expression?[,?...]?] ????[?HAVING?condition?[,?...]?] ????[?{?UNION?|?INTERSECT?|?EXCEPT?[?ALL?]?}?select?] ????[?ORDER?BY?expression?[?ASC?|?DESC?|?USING?operator?]?[,?...]?] ????[?FOR?UPDATE?[?OF?class_name?[,?...]?]?] ????[?LIMIT?{?count?|?ALL?}?[?{?OFFSET?|?,?}?start?]] ????? ?现在我们将通过不同的例子演示?SELECT?语句复杂的语法。用于这些例子的表在?供应商和部件数据库?里定义。? 1.4.1.1.?简单的?Select 这里是一些使用?SELECT?语句的简单例子:? Example?1-4.?带有条件的简单查询 要从表?PART?里面把字段?PRICE?大于?10?的所有记录找出来,?我们写出下面查询:? SELECT?*?FROM?PART ????WHERE?PRICE??10; ? 然后得到表:?? ?PNO?|??PNAME??|??PRICE -----+---------+-------- ??3??|??Bolt???|???15 ??4??|??Cam????|???25 ? ? 在?SELECT语句里使用?*?将检索出表中的所有属性。?如果我们只希望从表?PART?中检索出属性?PNAME?和?PRICE,?我们使用下面的语句:? SELECT?PNAME,?PRICE? ????FROM?PART ????WHERE?PRICE??10; ? 这回我们的结果是:?? ??????????????????????PNAME??|??PRICE ?????????????????????--------+-------- ??????????????????????Bolt???|???15 ??????????????????????Cam????|???25 ? 请注意?SQL?的?SELECT?语句对应关系演算里面的?projection?(映射),而不是?selection(选择)(参阅?关系演算?获取详细信息)。?? ? WHERE?子句里的条件也可以用关键字?OR,AND,和?NOT?逻辑地连接起来:? SELECT?PNAME,?PRICE? ????FROM?PART ????WHERE?PNAME?=?Bolt?AND ?????????(PRICE?=?0?OR?PRICE?=?15); ? 这样将生成下面的结果:?? ?PNAME??|??PRICE --------+-------- ?Bolt???|???15 ? ? 目标列表和?WHERE?子句里可以使用算术操作。例如,?如果我们想知道如果我们买两个部件的话要多少钱,?我们可以用下面的查询:? SELECT?PNAME,?PRICE?*?2?AS?DOUBLE ????FROM?PART ????WHERE?PRICE?*?2??50; ? 这样我们得到:?? ?PNAME??|??DOUBLE --------+--------- ?Screw??|????20 ?Nut????|????16 ?Bolt???|????30 ? 请注意在关键字?AS?后面的?DOUBLE?是第二个列的新名字。?这个技巧可以用于目标列表里的每个元素,?给它们赋予一个在结果列中显示的新的标题。?这个新的标题通常称为别名。这个别名不能在该查询的其他地方使用。?? ? ? 1.4.1.2.?Joins(连接) 下面的例子显示了?SQL?里是如何实现连接的。? 要在共同的属性上连接三个表?SUPPLIER,PART?和?SELLS,?我们通常使用下面的语句:? SELECT?S.SNAME,?P.PNAME ????FROM?SUPPLIER?S,?PART?P,?SELLS?SE ????WHERE?S.SNO?=?SE.SNO?AND

您可能关注的文档

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档