第2章 数据查询-条件查询和排序_第1页
第2章 数据查询-条件查询和排序_第2页
第2章 数据查询-条件查询和排序_第3页
第2章 数据查询-条件查询和排序_第4页
第2章 数据查询-条件查询和排序_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Oracle数据库查询与管理第2章:条件查询和排序本章内容使用WHERE条件限定查询行使用ORDER BY对查询结果进行排序使用替换变量&在查询中使用单行函数字符串函数日期桉树数字函数本章目标掌握SELECT语句中的where条件限定能对查询得到的数据进行排序能使用单行函数进行定制输出问题需求:查询部门编号为90的部门的员工信息1 使用WHERE子句限定返回行WHERE子句的作用customers表只想查看customer_id不等于2的顾客信息使用WHERE子句限定返回行限制选定的行使用WHERE子句可以限制返回的行WHERE子句在FROM子句的后面,包含一个必要条件语法说明语句语句

2、说明说明WHERE将查询对象限制在满足一定条件的行condition由列名、表达式、常数和比较运算符组成Where中的字符和日期字符串和日期应放在单引号内字符串区分大小写,日期区分格式默认的日期格式是DD-MON-RR示例:1.1条件表达式中的比较运算符比较值可以使用的比较运算符操作符操作符说明说明=等于 或!=不等于大于=大于或等于ANY跟在、=、=、=6000Last_name是Smith的员工where last_name=Smith示例:在WHERE子句中使用()号操作符从products表中检索product_id和name列,满足product_id列大于8SELECT produ

3、ct_id,nameFROM productsWHERE product_id8;示例:使用ANY操作符从customers表中检索customer_id列大于2、3或4中任何一行的值SELECT *FROM customersWHERE customer_id ANY (2,3,4);示例:使用ALL操作符从customers表中检索customer_id列比2、3和4都大的行SELECT *FROM customersWHERE customer_id ALL (2,3,4);1.2 SQL操作符操作符操作符说明说明LIKE与某个字符模式匹配IN与值列表的任一值匹配BETWEENAND介于

4、两个值之间(包含这两个值)SQL 操作符使用IN操作符来检索其列值在某个列表中的行示例:返回雇员表中由编号100/101和201管辖的雇员信息用IN测试指定值集IN运算符可以用于任何的数据类型()中指定的数值顺序是可以任意指定的注意:IN 运算符实质上相当于转化为一系列等值比较的OR运算,因此性能上并不会提升,只能达到简化逻辑的目的BETWEEN检索指定范围内的值使用BETWEEN操作符来检索值包含着指定区间内的行示例:查询薪资在2500到3500之前的雇员信息对字符串也可以使用BETEWEE用LIKE对字符串进行模式匹配使用 LIKE 运算符可执行通配符搜索,查找仅限于搜索字符串值搜索条件可

5、包含文字字符或数字: % 表示零个或多个字符_ 表示一个字符示例:使用LIKE操作符,查找first_name第一个字母为S的雇员:LIKE可以是某些BETWEEN比较的快捷实现比如:查询1995年进入公司的雇员信息这点是利用了“在Oracle中,日期是用字符串表示的”这个特点?LIKE中的ESCAPE指定转义符IS NULL条件使用IS NULL可以测试空值上例:查询没有经理管辖的雇员的姓名和经理idSELECT last_name,manager_idFROM employeesWHERE manager_id=nullX查询无权获得佣金的所有雇员的信息(commission_pct为空值

6、)使用逻辑操作符逻辑操作符允许使用逻辑条件来限制查询的结果使得可以在Where子句中使用多个条件操作符操作符说明说明x AND y当x和y都为ture时,返回truex OR y当x和y中有一个为true时,就返回trueNOT x如果x为false,则返回true;如果x为true,则返回false示例:从employees表中检索满足下列两个条件的行薪资为10000或更高职位包含字符串“MAN”示例:从Employees表中检索满足下列两个条件之一的行薪资为10000或更高职位包含字符串“MAN”NOT 运算符示例:查询职务不是IT_PROG、ST_CLERK和SA_REP 的所有雇员的姓

7、名和职务。NOT与其他运算符一起使用使用ORDER BY 子句使用 ORDER BY 子句可对检索结果进行排序ASC:升序,默认顺序DESC:降序ORDER BY子句位于SELECT的最后使用ORDER BY 子句示例:使用ORDER BY 对从Employees表中获得的数据根据入职日期hire_date进行排序SELECT last_name,job_id,department_id,hire_date FROM employees ORDER BY hire_date;示例:使用DESC关键字。对从employees表中检索出的数据首先根据hire_date进行升序排序,然后根据last_name列的值进行降序排序SELECT * FROM employeesORDER BY hire_date ,last_name ;按照列别名或数字位置排序替代变量对同一个查询,每次运行时为查询条件提供一个不同的值替代变量使用&替代变量可临时存储值可以在以下地方使用替代变量WHERE条件ORDER BY 子句列表达式表名整个SELECT语句注意:在JDBC代码中调用的SQL语句,不能使用替代变量SELECT employee_id,last_name,salary,department_idFROM employeesWHERE employ

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论