2-3 函数-使用单行函数

上传人:豆浆 文档编号:1951700 上传时间:2017-07-17 格式:PPT 页数:63 大小:891KB
返回 下载 相关 举报
2-3 函数-使用单行函数_第1页
第1页 / 共63页
2-3 函数-使用单行函数_第2页
第2页 / 共63页
2-3 函数-使用单行函数_第3页
第3页 / 共63页
2-3 函数-使用单行函数_第4页
第4页 / 共63页
2-3 函数-使用单行函数_第5页
第5页 / 共63页
点击查看更多>>
资源描述

《2-3 函数-使用单行函数》由会员分享,可在线阅读,更多相关《2-3 函数-使用单行函数(63页珍藏版)》请在金锄头文库上搜索。

1、单行函数,目标,完成本课后,您应当能够执行下列操作: 描述在SQL 中可用的函数的变量类型 在SELECT 语句中使用字符,数字和日期函数 描述转换函数的使用,大纲,SQL函数的种类单行函数字符函数数字函数日期函数转换函数嵌套函数通用函数条件表达式,SQL 函数,Function,函数( Function )执行作用: 执行数据计算 修改单个数据项 操纵输出进行行分组 格式化显示的日期和数字 转换列数据类型,SQL 函数的两种类型,函数,单行函数,多行函数,单行函数只对单条记录有效,多行函数对多条记录有效。,大纲,SQL函数的种类单行函数字符函数数字函数日期函数转换函数嵌套函数通用函数条件表达

2、式,单行函数,单行函数:操纵数据项接受多个参数(常数、变量、列名、表达式),并返回一个值作用于每一个返回行每行返回一个结果可以修改数据类型可以嵌套接受多个参数,参数可以是一个列或者一个表达式,function_name (arg1, arg2,.),单行函数,转换,字符,数字,日期,通用,单行函数,大纲,SQL函数的种类单行函数字符函数数字函数日期函数转换函数嵌套函数通用函数条件表达式,字符函数,字符函数,LOWER:转换字符值为小写UPPER:转换字符值为大写INITCAP:转换每个单词的首字母值为大写,所有其它值为小写,CONCAT:连接第一个字符值到第二个字符值SUBSTR:从字符返值中

3、回指定的字符LENGTH:返回表达式中的字符数INSTR:返回一个命名串的数字位置LPAD | RPAD:填充字符值左、右调节到n 字符位置的总宽度TRIM:够从一个字符串修整头或尾字符REPLACE:从字符串查找一个文本表达式,大小写处理函数,字符处理函数,Function,Result,大小写处理函数,这些函数转换字符串的大小写,LOWER(SQL Course)UPPER(SQL Course)INITCAP(SQL Course),sql courseSQL COURSESql Course,使用大小写处理函数,显示雇员Higgins 的雇员号、姓名和部门号:,SELECT emplo

4、yee_id, last_name, department_idFROM employeesWHERE last_name = higgins;no rows selected,SELECT employee_id, last_name, department_idFROM employeesWHERE LOWER(last_name) = higgins;,CONCAT(Hello, World)SUBSTR(HelloWorld,1,5)LENGTH(HelloWorld)INSTR(HelloWorld, W)LPAD(salary,10,*)RPAD(salary, 10, *)TRI

5、M(H FROM HelloWorld),HelloWorldHello106*2400024000*elloWorld,Function,Result,字符处理函数,字符串处理函数:,SELECT employee_id, CONCAT(first_name, last_name) NAME, job_id, LENGTH (last_name), INSTR(last_name, a) Contains a?FROM employeesWHERE SUBSTR(job_id, 4) = REP;,使用字符处理函数,1,2,3,1,2,3,大纲,SQL函数的种类单行函数字符函数数字函数日期函

6、数转换函数嵌套函数通用函数条件表达式,数字函数,ROUND: 四舍五入指定小数的值ROUND(45.926, 2)45.93TRUNC: 截断指定小数的值TRUNC(45.926, 2) 45.92MOD: 返回除法的余数MOD(1600, 300)100,SELECT ROUND(45.923,2), ROUND(45.923,0), ROUND(45.923,-1)FROM DUAL;,使用ROUND 函数,DUAL 是一个虚拟表,你可以用它来查看函数和计算的结果,1,2,3,3,1,2,SELECT TRUNC(45.923,2), TRUNC(45.923), TRUNC(45.923

7、,-2)FROM DUAL;,使用TRUNC 函数,3,1,2,1,2,3,SELECT last_name, salary, MOD(salary, 5000)FROM employeesWHERE job_id = SA_REP;,使用MOD 函数,计算所有是销售代表的雇员的工资被5000除后的余数,大纲,SQL函数的种类单行函数字符函数数字函数日期函数转换函数嵌套函数通用函数条件表达式,日期的使用,Oracle 数据库用内部数字格式存储日期:世纪,年,月,日,小时,分钟和秒 默认日期显示格式是DD-MON-RR. 仅指定年的最后两位数字,允许你存储21世纪日期在20世纪中 用同样的方式,

8、允许你存储20世纪的日期在21世纪中,SELECT last_name, hire_dateFROM employeesWHERE last_name like G%;,日期的使用,SYSDATE 函数返回: Date Time,用日期计算,从日期加或者减一个数,结果是一个日期值 两个日期相减,得到两个日期之间的天数 用小时数除以24,可以加小时到日期上,用日期做算术运算,SELECT last_name, (SYSDATE-hire_date)/7 AS WEEKSFROM employeesWHERE department_id = 90;,日期函数,Number of monthsbet

9、ween two dates,MONTHS_BETWEEN,ADD_MONTHS,NEXT_DAY,LAST_DAY,ROUND,TRUNC,Add calendar months to date,Next day of the date specified,Last day of the month,Round date,Truncate date,MONTHS_BETWEEN (01-SEP-95,11-JAN-94),使用日期函数,ADD_MONTHS (11-JAN-94,6),NEXT_DAY (01-SEP-95,FRIDAY),LAST_DAY(01-FEB-95),19.677

10、4194,11-JUL-94,08-SEP-95,28-FEB-95,ROUND(SYSDATE,MONTH) 01-AUG-95,ROUND(SYSDATE ,YEAR) 01-JAN-96,TRUNC(SYSDATE ,MONTH) 01-JUL-95,TRUNC(SYSDATE ,YEAR) 01-JAN-95,使用日期函数,假定SYSDATE = 25-JUL-95:,SELECT employee_id, hire_date,ROUND(hire_date, MONTH), TRUNC(hire_date, MONTH)FROM employeesWHERE hire_date LI

11、KE %97;,大纲,SQL函数的种类单行函数字符函数数字函数日期函数转换函数嵌套函数通用函数条件表达式,转换函数,隐式数据类型转换,显式数据类型转换,数据类型转换,隐式数据类型转换,对于直接赋值, Oracle 服务器能够自动地进行下面的转换:,VARCHAR2 or CHAR,To,VARCHAR2 or CHAR,NUMBER,DATE,NUMBER,DATE,隐式数据类型转换,对于表达式赋值,Oracle 服务器能自动地进行下面的转换:,VARCHAR2 or CHAR,To,VARCHAR2 or CHAR,NUMBER,DATE,显式数据类型转换,NUMBER,CHARACTER,

12、TO_CHAR,显式数据类型转换,对日期使用TO_CHAR 函数,格式模板 必须加单引号,并且区分大小写 能够包含任一有效的日期格式元素 有一个fm 元素用来删除填补的空,或者前导零 用一个逗号与日期值分开,TO_CHAR(date, format_model),SELECT employee_id, TO_CHAR(hire_date, MM/YY) Month_HiredFROM employeesWHERE last_name = Higgins;,YYYY,日期格式模板的元素,YEAR,MM,MONTH,DY,DAY,Full year in numbers,Year spelled

13、out,Two-digit value for month,Three-letter abbreviation of the day of the week,Full name of the day of the week,Full name of the month,MON,Three-letter abbreviation of the month,DD,例子:select TO_CHAR(SYSDATE,HH24:MI:SS AM) from dualselect TO_CHAR(TO_DATE(21-1月-95),YYYY-MM-DD HH24:MI:SS AM)from dualse

14、lect TO_CHAR(SYSDATE,DD of MONTH) from dualselect TO_CHAR(TO_DATE(25-JUL-95),DD of MONTH) from dualselect TO_CHAR(TO_DATE(25-7 月-95),DD of MONTH) from dualselect to_char(sysdate, ddspth) from dualselect TRUNC(TO_DATE(25-JUL-95) ,ddspth) from dual,日期格式模板的元素,日期格式模板元素,日期的时间部分,时间元素格式.加字符串,将它们括在双引号中.数字前缀拼出数字,例:select to_char(sysdate, ddspth) from dual,日期格式模板元素,时间格式化,其它格式,指定后缀来影响数字显示,TO_CHAR 函数用于日期转换,SELECT last_name, TO_CHAR(hire_date, fmDD Month YYYY) AS HIREDATEFROM employees;,对数字使用TO_CHAR 函数,下面是一些你能够和TO_CHAR 一起使用的格式化元素,用于显示字符形式的数字值:,TO_CHAR(number, format_model),

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

当前位置:首页 > 电子/通信 > 综合/其它

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