• 单行函数


    功能简单:

    例如:现在希望字母变为大写。这样的功能就能使用单行函数完成。

    核心的几个。

    字符串函数,数字函数,日期函数,转换函数,通用函数。

    要求几下单行函数的名称,返回值类型,接受参数的类型。

    字符串函数

    转大写

    字符串 UPPER (字符串 | 数据列)

    转小写

    字符串 LOWER (字符串 | 数据列)

    示例:

    SELECT UPPER('Hello') , LOWER('Hello') FROM dual ;    虚拟表中显示’Hello'

    SELECT LOWER(ename) FROM EMP ;            按照小写显示雇员名字

    利用这两个特性可以将用户信息变为统一的大写或者小写。

    范例:

    例如输入‘Smith’要输出‘SMITH’ 的信息。

    Oracle 有一种替代操作,

    例如:

    SELECT * FROM &tablename ;  

    SELECT * FROM EMP WHERE ename= UPPER('&name') ;

    首字母大写,其余字母小写

    字符串 INITCAP(字符串 | 列)

    计算字符串的长度

    LENGTH (字符串 |列)

    替换指定字符串的内容,

    字符串REPLACE(字符串 | 列 ,要替换的内容 ,替换的内容)

    截取操作.

    SUBSTR (字符串 | 列 ,截取开始索引)

    SUBSTR  (字符串 | 列 ,截取开始索引,结束索引)

    去掉左右空格

    TRIM (字符串 | 列)

    转变首字母大写
    SELECT INITCAP(ENAME) FROM EMP ;
    计算长度
    SELECT LENGTH('Hello') FROM EMP ;
    SELECT ename , LENGTH(ename) FROM EMP ;
    SELECT ENAME FROM emp WHERE LENGTH(ENAME)=5;
    替换操作
    SELECT REPLACE('hello world' , 'l','_') FROM EMP ;
    SELECT ename,REPLACE(ENAME,'A','_')FROM EMP ;
    截取操作
    SELECT SUBSTR('Hello world',7) FROM DUAL ;
    SELECT SUBSTR('Hello world',7,9) FROM DUAL ;
    截取开始的时候是从1开始的,不是0
    SELECT ENAME,SUBSTR(ename,1,3) FROM emp ;    截取名字前三位
    SELECT ENAME,SUBSTR(ename,LENGTH(ENAME)-2,LENGTH(ENAME))FROM EMP ; 截取名字后三位
    去掉左右空格的操作
    SELECT TRIM('    HELLLO WORLD  ') FROM DUAL ;

    数字函数:

    四舍五入

    数字 ROUND(数字 |列 )

    数字 ROUND(数字 |列 ,位数)

    日期函数

    伪列:SYSDATE         SYSTIMESTAMP

    日期+数字 = 日期   日期-数字= 日期   日期-日期 = 数字  没有日期+日期

    转换函数

    1.转字符串数据  : 字符串 TO_CHAR(数字|日期|列,转换)

      日期:年(yyyy)月(mm)日(dd)

      数字:一位数字(9) ,货币数字(L)

      范例将日期格式化为字符串:

    SELECT SYSDATE FROM DUAL ;
    SELECT TO_CHAR(SYSDATE,'yyyy-mm-dd') FROM DUAL ;
    SELECT TO_CHAR(SYSDATE,'yyyy-mm-dd hh:mi:ss') FROM DUAL ;
    SELECT TO_CHAR(SYSDATE,'yyyy-mm-dd hh24:mi:ss') FROM DUAL ;  //24小时计时

    用户也可使用TO_CHAR拆分年月日

    SELECT  TO_CHAR(SYSDATE,'yyyy')year,
        TO_CHAR(SYSDATE,'MM')months,
        TO_CHAR(SYSDATE,'DD')day
    FROM DUAL 

    查询出所有在二月份雇佣的雇员:

    SELECT * FROM EMP WHERE TO_CHAR(hiredate,'mm')='02' ;

    格式化数字显示

    SELECT TO_CHAR(5242134565313,'999,999,999,999,999,999,999') FROM DUAL ;
    SELECT TO_CHAR(5242134565313,'L999,999,999,999,999,999,999') FROM DUAL ;

    2.将字符串变为日期 TO_DATE

    3.将字符串变为数字 TO_NUMBER()

    通用函数

    特色函数

    主要是Oracle特色函数有两个 NVL() ,DECODE()

    1.处理空数据

      数字 NVL(列 | 数据 | ,默认值)

      范例要求计算每一位雇员的年薪 :

      SELECT ename,sal,comm,(sal+comm)*12 FROM emp ;

      发现有一部分人没有年薪的。

      因为有人没有comm,comm为null现在就要使用NVL函数

      

    SELECT ename,sal,comm,(sal+NVL(comm,0))*12 FROM emp ;

    2.多数据判断:数据DECODE(字段|数据,判断数据1,显示数据1,。。。。【默认数据】)

      范例:

      将所有雇员的职位数据换位中文:

      

    SELECT ename,job,
        DECODE(job,'CLERK','办事员','未处理') 
    FROM     emp ;

      上了这个船就要把所有的写出来,不然就默认未处理。

  • 相关阅读:
    PHP中常用的字符串格式化函数总结
    php格式化金额函数分享
    PHP获取当前日期和时间及格式化方法参数
    CSS 中如何把 Span 标签设置为固定宽度
    css中 Span 元素的 width 属性无效果原因及多种解决方案
    js网页如何获取手机屏幕宽度
    HTML meta viewport属性详细说明
    Android onLowMemory()和onTrimMemory()
    Qt 拷贝文件目录
    QT5.1 调用https
  • 原文地址:https://www.cnblogs.com/da-peng/p/5176133.html
Copyright © 2020-2023  润新知