ImageVerifierCode 换一换
格式:DOCX , 页数:149 ,大小:809.44KB ,
资源ID:2851330      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2851330.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(SQLoracle.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

SQLoracle.docx

1、SQLoracleSQL的学习资料SELECT名称SELECT 从表或视图中取出若干行SELECT ALL | DISTINCT ON ( expression , . ) expression AS name , . INTO TEMPORARY | TEMP TABLE new_table FROM table alias , . WHERE condition GROUP BY column , . HAVING condition , . UNION ALL | INTERSECT | EXCEPT select ORDER BY column ASC | DESC | USING o

2、perator , . FOR UPDATE OF class_name , . LIMIT count | ALL OFFSET | , start 输入expression 表的列/字段名或一个表达式 name 使用 AS 子句为一个列/字段或一个表达式声明另一个名称这个名称主要用于标记输出列。name 不能在 WHERE,GROUP BY或 HAVING 子句中使用。但是它可以在与 ORDER BY 子句里引用。 TEMPORARY, TEMP 该表是在这次会话中唯一的,并且将在会话结束后自动删除。 new_table 如果声明了 INTO TABLE 子句,查询的结果将存储在指出名称的

3、另一个表中目标表(new_table)将被自动创建并且在此命令执行之前不应该存在。请参考 SELECT INTO 获取更多信息 注意: CREATE TABLE AS 语句也将从选择查询中创建新表table FORM 子句引用的一个现存的表的名称 alias 正在处理的表 table 的别名,用于缩写或消除一个表内部联合时的含混 condition 一个结果为真或假布尔表达式参阅 WHERE 子句获取更多信息 column 表的列/字段的名称 select 一个可以有除 ORDER BY 子句外的所有特性的选择语句 输出Rows 查询返回的所有结果集的行 count 查询返回的行的记数 描述S

4、ELECT 将从一个或更多表中返回记录行。选择的侯选行是满足 WHERE 条件的所有行。或者如果省略了 WHERE 语句则选择表中的所有行(参阅 WHERE 子句)DISTINCT 将从选择出来的结果集中删除所有的重复的行。ALL (缺省)将返回所有侯选行,包括重复的行。DISTINCT ON 删除匹配所有表达式的行,只保留每个重复集的第一行。注意这里每个重复集的第一行是不可预料的,除非我们用 ORDER BY 来保证我们希望的行最先出现。例如, SELECT DISTINCT ON (location) location, time, report FROM weatherReports O

5、RDER BY location, time DESC; 检索出每个地区的最近的天气预报。但是如果我们没有使用 ORDER BY 来强制每个地区按时间值降续排列,我们得到的将是每个地区的不可预料的时间的报告。GROUP BY 子句允许用户将一个表分成概念上的组 (参阅 GROUP BY 子句。) HAVING 子句声明一个分组了的表,该表是从前面声明的子句的结果集中去除了一些组后生成的(参阅 HAVING 子句。) ORDER BY 子句允许用户根据模式操作符(ASCending 或 DESCending)来表明他/她所希望的行的排序模式(参阅 ORDER BY 子句 )。UNION 操作符允

6、许结果集是那些涉及到的查询所返回的行的集合。(参阅 UNION 子句。) INTERSECT 给出两个查询公共的行。(参阅 INTERSECT 子句。) EXCEPT 给出存在于第一个查询而不存在于第二个查询的行。(参阅 EXCEPT 子句。) FOR UPDATE 子句允许 SELECT 语句对选出的行执行排他锁。LIMIT 子句允许给用户返回一个查询生成的结果的子集。(参阅 LIMIT 子句。) 你必须有 SELECT 权限用来从表中读取数值(参阅 GRANT/REVOKE 语句) WHERE 子句 可选的 WHERE 条件有如下常见的形式:WHERE boolean_expr boole

7、an_expr 可以包含任意个得出布尔值的表达式。通常表达式会是 expr cond_op expr 或 log_op expr 这里 cond_op 可以是下面之一:=,=, 或条件操作符象 ALL,ANY,IN,LIKE等,或者用户定义的操作符,而 log_op 可以为: AND,OR,NOT比较返回的结果要么是TRUE 要么是 FALSET 并且如果表达式的值是 FALSE,所有记录都将被丢弃GROUP BY 子句GROUP BY 声明一个分了组的表,该表源于应用使用下面的子句:GROUP BY column , . GROUP BY 将把所有在组合了的列上共享同样的值的行压缩成一行。如

8、果存在聚集函数,这些聚集函数将计算每个组的所有行,并且为每个组计算一个独立的值(如果没有 GROUP BY,聚集函数对选出的所有行计算出一个数值)。存在 GROUP BY 时,除了在聚集函数里面,对任何非组合列的引用都是非法的,因为对一个非组合列会有多于一个可能的返回值。HAVING 子句可选的 HAVING 条件有如下形式:HAVING cond_expr 这里 cond_expr 与为 WHERE 子句里声明的相同 HAVING 子句声明一个从前面的子句的结果集中去除了一些不符合 cond_expr 组后分组的表 在 cond_expr 里引用的每个列/字段应该清晰地指明一个组的列/字段,

9、除非引用在一个聚集函数里。ORDER BY 子句ORDER BY column ASC | DESC , . column 既可以是一个列/字段名也可以是一个序数。序数指的是列/字段按顺序(从左到右)的位置这个特性可以使得对没有一个合适名称的列/字段的排序成为可能这一点可能永远没有用,因为总是可以通过AS 子句给一个要计算的列/字段赋予一个名称,例如: SELECT title, date_prod + 1 AS newlen FROM films ORDER BY newlen; 从 PostgreSQL 版本 6.4 开始,还可以 ORDER BY 任意表达式,包括那些没有出现在 SELE

10、CT 结果列表里面的域。因此下面的语句现在是合法的:SELECT name FROM distributors ORDER BY code; 我们可以给ORDER BY 子句里每个列/字段加一个关键字 DESC (降序)或 ASC(升序)如果不声明,ASC 是缺省我们还可以声明一个排序操作符来实现排序。ASC 等效于使用 。UNION 子句 table_query UNION ALL table_query ORDER BY column ASC | DESC , . 这里 table_query 表明任何没有 ORDER BY 子句的选择表达式UNION 操作符允许结果集是那些涉及到的查询所

11、返回的结果的集合。两个做为 UNION 直接操作数的 SELECT 必须生成相同数目的字段,并且对应的字段必须有兼容的数据类型。缺省地,UNION 的结果不包含任何重复的行,除非声明了 ALL 子句同一 SELECT 语句中的多个 UNION 操作符是从左向右计算的注意 ALL 关键字不一定是全局的,只是应用在当前一对表的结果上 INTERSECT 子句table_query INTERSECT table_query ORDER BY column ASC | DESC , . 这里 table_query 声明任何没有 ORDER BY 子句的选择表达式。INTERSECT 给出两个查询公

12、共的行。 两个做为 INTERSECT 直接操作数的 SELECT 的结果必须有相同数目的字段,并且对应的字段必须有兼容的数据类型。除非用圆括号指明顺序,同一 SELECT 语句中的多个 INTERSECT 操作符是从左向右计算的。EXCEPT 子句table_query EXCEPT table_query ORDER BY column ASC | DESC , . 这里 table_query 声明任何没有 ORDER BY 子句的选择表达式。EXCEPT 给出存在于第一个查询而不存在于第二个查询的行。(参阅 EXCEPT 子句)。两个做为 EXCEPT 直接操作数的 SELECT 的结

13、果必须有相同数目的字段,并且对应的字段必须有兼容的数据类型。除非用圆括号指明顺序,同一 SELECT 语句中的多个 EXCEPT 操作符是从左向右计算的。LIMIT 子句 LIMIT count | ALL OFFSET | , start OFFSET start 这里 count 声明返回的最大行数,而 start 声明开始返回行之前忽略的行数。LIMIT 允许你检索有查询其他部分生成的行的某一部分。如果给出了限制计数,那么返回的行数不会超过哪个限制。如果给出了一个偏移量,那么开始返回行之前会忽略那个数量的行。在使用 LIMIT 时,一个好习惯是使用一个 ORDER BY 子句把结果行限制

14、成一个唯一的顺序。否则你会得到无法预料的查询返回的子集 - 你可能想要第十行到第二十行,但以什么顺序?除非你声明 ORDER BY,否则你不知道什么顺序。在 Postgres 7.0,查询优化器在生成查询规划时把 LIMIT 考虑进去了,所以你很有可能因给出的 LIMIT 和 OFFSET 值不同而得到不同的规划(生成不同的行序)。因此用不同的 LIMIT/OFFSET 值选择不同的查询结果的子集将不会产生一致的结果,除非你用 ORDER BY 强制生成一个可预计的结果顺序。这可不是毛病;这是 SQL 生来的特点,因为除非用了 ORDER BYE 约束顺序,SQL 不保证查询生成的结果有任何特定的顺序。用法将表 films 和表 distributors 联合在一起:SELECT f.title, f.did, d.name, f.date_prod, f.kind FROM distributors d, films f WHERE f.did = d.didtitle |did|name | date_prod|kind-+-+-+-+-The Third Man |101|British Lion |1949-12-23|DramaThe Afri

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1