oracle中长用到的单行函数 (从实践中学习Oracle SQL-第四章)

来源:互联网 发布:网络摄像机安装图解 编辑:程序博客网 时间:2024/05/22 11:08
单行函数:
   只对表中的一行数据进行操作,并且对每一行数据只产生一个输出结果。
   一、单行字符型函数
     LOWER/UPPER/INITCAP/CONCAT/SUBSTR/LENGYH/INSTR/TRIM/REPLACE


     对有些不需要FROM子句的语句使用dual表。dual是系统的一个虚表(伪表)。查询语句中必须包含SELECT子句和FROM子句,dual表的存在就是为了满足这一需求的
     1.LOWER 全部转换为小写
     2.UPPER 全部转换为大写
     3.INITCAP 把每个字的头一个字符转换成大写,其余的转换成小写
     4.CONCAT 把头一个字符串和第二个字符串连接成一个字符串
     5.SUBSTR 返回指定的子串,该子串从第m个字符开始,其长度为n  SUBSTR(列名|表达式,m,[n])   省略n默认到最后
     6.INSTR 返回所给字符串在查找字符串中的数字位置。INSTR(列名|表达式,'字符串',[m],[n])  从m个字符开始搜索,n表示所给字符串出现的次数。大小写敏感
     7.TRIM 从源字符串中的头(leading)部,或尾(trailing)部,或头(leading)部和尾(trailing)部(both)中去掉要去掉的字符串  TRIM([leading|trailing|both]要去掉的字符串 FROM 源字符串)  。没有制定头或尾,TRIm 函数按照默认both处理
   二、数字型函数
     ROUND/TRUNC/MOD
     1.ROUND 将列名或表达式所表示的数值四舍五入到小数点后的n位  ROUND(列名|表达式,n)
     2.TRUNC 将列名或表达式所表示的数值截取到小数点后的n位 TRUNC(列名|表达式,n)
     3.MOD 将m除以n并取余数  MOD(m,n)
   三、日期函数
     MONTHS_BETWEEN/ADD_MONTHS/NEXT_DAY/LAST_DAY
     1.两个日期型数据相减为数字型
     2.MONTHS_BETWEEN 返回日期1和日期2之间的月数,若日期1大于日期2 返回为正,日期2 大于日期1,返回为负。 MONTHS_BETWEEN(日期1,日期2)
     3.ADD_MONTHS 把n个月加到日期上 ADD_MONTHS(日期,n)
     4.NEXT_DAYS(日期,字符串) 该函数返回下一个由字符串(星期几)指定的日期 NEXT_DAYS(sysdate,'MONDAY')从当前时间开始的下一个星期一
     5.LAST_DAY(日期)  返回该日期所在月的最后一天
   四、ROUND和TRUNC函数用于日期型数据
     1.SELECT ROUND(TO_DATE('28-OCT-01'),'MONTH') FROM dual
       已知操作单位为月(MONTH),按照上下半月进行四舍五入。10月20日为10月下半月,入操作,进为11月1日
       同理适用于YEAR 
     2. SELECT TRUNC(TO_DATE('28-OCT-01'),'MONTH') FROM dual
        操作单位为月(MONTH) 10月28日截断为10月1日
        同样试用于YEAR  
   五、数据间的显式转换
      TO_CHAR/TO_NUMBER/TO_DATE
     1.TO_CHAR(日期,'fmt')  把日期型数据转换为长字符串,其中fmt为日期模式
       YYYY 完整的年份
       YEAR 年份的英文表示
       MM 月份
       MONTH 月份完整的英文表示
       DY 用3个英文字符缩写来表示星期几
       DAY 星期几的完整英文表示
       DD 几号的数字表示
     2.TO_CHAR(数字,'fmt') 
       fmt
       9:一个数字
       0:显示前导零
       $:显示美元号
       L:显示本地货币号
       .:显示小数点
       ,:显示千位符
       MI:在数的右边显示减号
       PR:把负数用尖括号扩起来


       TO_CHAR(salary,'L99,999.00')  超出设定的位则用#进行填充
     3.TO_NUMBER(字符串[, 'fmt']) 把字符串转换为数字
     4.TO_DATE(字符串[, 'fmt']) 把字符串转换为日期型数据
0 0
原创粉丝点击