文档详情

【2017年整理】Oracle中的单值函数.doc

发布:2017-01-31约2.86万字共10页下载文档
文本预览下载声明
Oracle中的单值函数 Oracle的函数 Oracle函数可以分为单值函数和分组函数两大类,单值函数又分为字符函数、日期和时间函数、数字函数、转换函数和混合函数:分组函数右count、max、min、avg、sum,都可以和group by 搭配使用。 单值函数 字符函数 字符串连接函数 问题:把员工的姓名和工作类型连在一起使用-分隔 函数:concat(字符串1,字符串2) select concat(concat(ename,-),job) from emp; 扩展点:字符串连接符号 || select ename || - || job from emp; 右对齐函数 问题:将员工的姓名右对齐显示 函数:lpad(待处理的字符串,预留位置,填充符号) select lpad(ename,10, ) from emp; 字符串截取函数 问题:截取员工姓名的前3个字符和字符4以后的内容显示 函数:substr(字符串,起始位置,截取的个数) substr(字符串,起始位置) --默认截取到最后 select ename, substr(ename,1,3),substr(ename,4) from emp; 字符查找函数 问题:字母T在员工姓名中第一次出现和第二次出现的位置 函数:instr(字符串,查找的字符,查找的起始位置,出现的次数) select ename, instr(ename,T,1,1) as A, instr(ename,T,1,2) as B from emp; 扩展:员工姓名中不含M的员工 select ename from emp where instr(ename,M,1,1)=0 首字母大写函数 问题:员工姓名首字母大写显示 函数:initcap(字符串) select initcap(ename) from emp; 小/大写函数 问题:将员工姓名大写转换 函数:upper(字符串)/lower(字符串) select upper(ename) , lower(ename) from emp; 字符串替换函数 问题:将姓名中的M全部替换成*显示 函数:replace(字符串,带替换的字符,替换后的字符) select replace(ename,M,*) from emp; 字符串长度函数 问题:找出姓名长度大于5的员工姓名 函数:length(字符串) select ename from emp where length(ename)5; 日期函数 系统时间 问题:返回系统的当前时间 函数:sysdate 说明:1、函数没有“( )” 2、dual 是一张无意义的表,在Oracle专门用于函数的测试 select sysdate from dual; 使用一个to_char,转换函数类型 将时间类型转成字符类型 函数:to_char(时间数据,格式) select to_char(sysdate,yyyy-mm-dd hh:mi:ss) from dual; 格式:yyyy 年 mm 月 dd 日期 d 一周中的第几天 ddd 一年中的第几天 day 周 month 月份 hh24 24小时制 日期修改函数 问题:将系统时间添加2个月显示 函数:add_months(时间数据,添加的月份) select add_months(sysdate,2) from dual; 日期差函数 问题:显示员工入职时间的月份统计 函数:mon
显示全部
相似文档