oracle数据库sql语句详解ppt课件

上传人:bin****86 文档编号:54898796 上传时间:2018-09-21 格式:PPT 页数:136 大小:2.21MB
返回 下载 相关 举报
oracle数据库sql语句详解ppt课件_第1页
第1页 / 共136页
oracle数据库sql语句详解ppt课件_第2页
第2页 / 共136页
oracle数据库sql语句详解ppt课件_第3页
第3页 / 共136页
oracle数据库sql语句详解ppt课件_第4页
第4页 / 共136页
oracle数据库sql语句详解ppt课件_第5页
第5页 / 共136页
点击查看更多>>
资源描述

《oracle数据库sql语句详解ppt课件》由会员分享,可在线阅读,更多相关《oracle数据库sql语句详解ppt课件(136页珍藏版)》请在金锄头文库上搜索。

1、OracleSQL,第一章,SELECT查询,本章目标,写一条SELECT查询语句 在查询中使用表达式、运算符 对空值的处理 对查询字段起别名 查询字段的连接,SELECT查询基本语法,SELECT FROM ,SQL SELECT * FROM s_emp,请查询出s_emp表中所有的员工信息:,查询指定列,SQL SELECT dept_id , salary FROM s_emp,请查询出s_emp表中所有的员工的部门ID,工资:,运用算数表达式,SQL SELECT salary*12 FROM s_emp,请查询出s_emp表中所有的员工的年薪:,运用算数表达式,括号可以改变运算符运

2、算的优先顺序:,SQL SELECT last_name, salary, 12 * salary + 1002 FROM s_emp;. Velasquez 2500 30100,SQL SELECT last_name, salary, 12 * (salary + 100)2 FROM s_emp;. Velasquez 2500 31200,列别名,请查询出s_emp表中所有的员工的姓名:,SQL SELECT firname_name | last_name FROM s_emp,SQL SELECT firname_name | last_name “姓名” FROM s_emp,

3、请查询出s_emp表中所有的员工的姓名:,空值的处理,请查询出s_emp表中所有的员工的工资:,SQL SELECT last_name, salary*commission_pct/100 “工资”2 FROM s_emp;,SQL SELECT last_name , salary+salary*NVL(commission_pct,0)/1002 FROM s_emp;,去掉重复行,请查询出s_dept表的部门名称:,SQL SELECT name2 FROM s_dept;,SQL SELECT DISTINCT name2 FROM s_dept;,去掉多列重复行,SQL SELEC

4、T DISTINCT dept_id, title2 FROM s_emp;,请查询出s_emp表中所有的员工的部门ID及职称:,小结,查询表的全部记录 查询指定的列 给列起别名 NVL函数及字符串连接符 重复行的处理Distinct,SELECT DISTINCT *,columnalias,. FROM table;,引言,第二章 条件查询,本章目标,WHERE条件查询 在查询中使用表达式、运算符 使用LIKE、BETWEEN、IN进行模糊查询,第一章内容回顾,对员工表中信息进行查询,具体要求如下:1. 查询s_emp表要求输出员工姓名(firs_name、last_name)和实际工资(

5、基本工资+提成):,查询基本语法,SELECT FROM WHERE ,请查询出s_emp表中dept_id为41的员工信息:,WHERE条件查询,请查询出s_emp表中last_name为Smith的员工的信息:,SELECT * FROM s_emp WHERE last_name = Smith,请查询出s_emp表中部门ID为50并且工资大于1500的员工的信息:,SELECT * FROM s_emp WHERE salary1500 and dept_id=50,WHERE条件查询-BETWEEN&IN,请查询出s_emp表中工资在1500到2000之间的员工信息:,SELECT

6、* FROM s_emp WHERE salary between 1500 and 2000,请查询出s_dept表中region_id为1,3的部门信息:,SELECT * FROM s_dept WHERE region_id in (1,3),WHERE条件查询-like,请查询出s_emp表中姓中含有字母a的员工信息:,SELECT * FROM s_emp WHERE last_name like %a%,请查询出当前用户下所有以s_开头的表:,SELECT table_name FROM user_tables WHERE table_name like S_% escape ,

7、请查询出s_emp表姓中第二个字母为a的员工信息:,SELECT * FROM s_emp WHERE last_name like _a%,空值的查询,查询出s_emp表中非销售职位的员工信息:,SELECT * FROM s_empWHERE commission_pct is null,课堂练习,已建立好的S_emp表,对此表中的数据进行模糊查询,具体要求如下: 查询一名last_name以“M”开头的员工,他的dept_id好像是3X 查询工资在1200至1500之间的员工 查询来自部门ID为(41,42,43)的员工,查询结果排序,查询出s_emp表将部门ID为41的员工的工资按从高

8、到低排列显示出来:,SELECT * FROM s_emp WHERE dept_id=41 ORDER BY salary DESC,SQL SELECT last_name, dept_id, salary2 FROM s_emp3 ORDER BY dept_id, salary DESC;,小结,Where条件查询 Betweenand & In & Like 模糊查询 对查询结果排序,SELECT DISTINCT *, column alias, .FROM tableWHERE condition(s)ORDER BY column, expr, alias ASC|DESC;,

9、第三章 单行函数,本章目标,熟悉各种类型单行函数的使用 掌握转换函数的使用,两种SQL函数,单行函数 Character Number Date Conversion,SINGLE-ROW FUNCTION,多行函数 Group,MULTI-ROW FUNCTION,字符函数,LOWER 将字符串转换成小写 UPPER 将字符串变为大写 INITCAP 将字符串的第一个字母变为大写 CONCAT 拼接两个字符串,与 | 相同 SUBSTR 取字符串的子串 LENGTH 以字符给出字符串的长度 NVL 以一个值来替换空值,字符函数举例,LOWER(SQL Course) sql course U

10、PPER(SQL Course) SQL COURSE INITCAP(SQL Course) Sql Course,SELECT * FROM s_emp WHERE last_name=PATEL,SELECT * FROM s_emp WHERE UPPER( last_name)=PATEL,字符操作函数,CONCAT(Good, String) GoodString SUBSTR(String,1,3) Str LENGTH(String) 6,数字函数,ROUND(value,precision) 按precision 精度4舍5入 TRUNC(value,precision) 按

11、precision 截取value,SQL SELECT round(55.5),round(-55.5),trunc(55.5),trunc(-55.5) FROM dual; round(55.5) round(-55.5) trunc(55.5) trunc(-55.5) - - - -56 -56 55 -55,SQL SELECT TRUNC (124.16666, -2) trunc1, trunc(124.16666,2) FROM dual;TRUNC1 TRUNC(124.16666,2) - -100 124.16,Round&Trunc函数,ROUND (45.923,

12、2) 45.92 ROUND (45.923, 0) 46 ROUND (45.923, -1) 50 TRUNC (45.923, 2) 45.92 TRUNC (45.923) 45 TRUNC (45.923, -1) 40,日期函数,MONTHS_BETWEEN(date2,date1) 给出 Date2 - date1的月数 ADD_MONTHS 增加或减去月份 NEXT_DAY ( date,day) 给出日期date之后下一天的日期 LAST_DAY(date) 返回日期所在月的最后一天,日期函数,MONTHS_BETWEEN(01-SEP-95,11-JAN-94) 19.77

13、4194 ADD_MONTHS(11-JAN-94,6) 11-JUL-94 NEXT_DAY(01-SEP-95,FRIDAY) 08-SEP-95 LAST_DAY(01-SEP-95) 30-SEP-95,日期函数,ROUND(25-MAY-95,MONTH) 01-JUN-95 ROUND(25-MAY-95 ,YEAR) 01-JAN-95 TRUNC(25-MAY-95 ,MONTH) 01-MAY-95 TRUNC(25-MAY-95 ,YEAR) 01-JAN-95,转换函数,TO_CHAR(date, fmt) 转换日期格式到字符串,用下列格式显示字符为数字:9 代表一个数字

14、.0 显示前缀零.$ 根据本地语言环境显示货币.L 采用当地货币符号. 打印一个小数点., 千位计算法显示.,日期格式,To-char举例,SQL SELECT last_name, TO_CHAR(start_date,2 fmDdspth “of “ Month YYYY fmHH:MI:SS AM) HIREDATE3 FROM s_emp4 WHERE start_date LIKE %91;,SQL SELECT Order | TO_CHAR(id) |2 was filled for a total of | TO_CHAR(total,fm$9,999,999)3 FROM s

15、_ord4 WHERE ship_date = 21-SEP-92;,To-char举例,查询员工表中入职日期在7月份的员工信息:,SELECT * FROM s_emp WHERE to_char(start_date,mm)=07,RR 日期格式,Current Year 1995 1995 2001 2001,Specified Date 27-OCT-95 27-OCT-17 27-OCT-17 27-OCT-95,RR Format 1995 2017 2017 1995,YY Format 1995 1917 2017 2095,If the specified two-digit year is,If two digits of the current year are,

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

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

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