• BayaiM__ oracle函数_01


    BayaiM__ oracle函数_01

     
    Oracle函数
    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    行函数:
    --ABS求绝对值
    SELECT ABS(-1) FROM DUAL;

    --SQRT求平方根
    SELECT SQRT(361) FROM DUAL;

    --POWER求m的n次幂
    SELECT POWER(2,10), FROM DUAL;

    --COS求弧度的余弦值
    SELECT COS(3.1415) FROM DUAL;

    --ARCCOS求弧度
    SELECT ACOS(1) FROM DUAL; 

    --SIN求弧度的正弦值
    SELECT SIN(3.1415) FROM DUAL;

    --ARCSIN求弧度
    SELECT ASIN(1) FROM DUAL;

    --MOD求余数
    SELECT MOD(100,90) FROM DUAL;

    --CEIL进一圆整
    SELECT CEIL(100.5) FROM DUAL;

    --FLOOR去尾圆整
    SELECT FLOOR(10.1) FROM DUAL;

    --ROUND四舍五入取整
    SELECT ROUND(10.1234,3) FROM DUAL;

    --EXP求e的n次方
    SELECT EXP(2) FROM DUAL;

    --LN求e的对数
    SELECT LN(20) FROM DUAL;

    --LOG求对数
    SELECT LOG(2,4) FROM DUAL;

    --取当前日期
    SELECT SYSDATE FROM DUAL;

    --将ROWID转换为CHAR
    SELECT ROWIDTOCHAR(ROWID) FROM SCOTT.EMP;

    --将CHAR转换为ROWID
    SELECT * FROM SCOTT.EMP WHERE ROWID=CHARTOROWID('AAAMfPAAEAAAAAgAAN');

    --TRUNC截断取整
    SELECT TRUNC(10.123456,5) FROM DUAL;


    --求字符对应的ASCII码
    SELECT ASCII('C') FROM DUAL;


    --求ASCII码对应的字符
    SELECT CHR(50) ROM DUAL;

    --转换成小写
    SELECT LOWER('ABCD') FROM DUAL;


    --转换成大写
    SELECT UPPER('abcd') FROM DUAL;


    --将每个单词首字母大写
    SELECT INITCAP('abcd efg') FROM DUAL;

    --截取子串

    SELECT SUBSTR('ABCDEFG',2,4) FROM DUAL;  --从左向右


    SELECT SUBSTR('ABCDEFG',-1,3) FROM DUAL;  --从右向左


    --求字符串长度

    SELECT LENGTH('12345') FROM DUAL;


    --求出现位置,给定母串,子串,起始位置,次数


    SELECT INSTR('ABCDEFGE','E',4,1) FROM DUAL;

    --向左补齐
    SELECT LPAD('A',10,'B') FROM DUAL;

    --向右补齐
    SELECT RPAD('A',10,'B') FROM DUAL;

    --去空格

    SELECT TRIM(' ABC ') FROM DUAL;


    SELECT LTRIM(' ABC ') FROM DUAL;

    SELECT RTRIM(' ABC ') FROM DUAL;

    --TO_DATE转换为日期


    SELECT TO_DATE('2012-01-02','yyyy-MM-dd') FROM DUAL;

    --求两个日期间的月份

    SELECT MONTHS_BETWEEN(TO_DATE('2012-01-01','yyyy-MM-dd'),TO_DATE('2012-02-01','yyyy-MM-dd')) FROM DUAL;


    --给日期加上一个自然月
    SELECT ADD_MONTH(TO_DATE('2012-01-01','yyyy-MM-dd'),2) FROM DUAL;

    --求下一天
    SELECT NEXT_DAY(TO_DATE('2012-01-01','yyyy-MM-dd')) FROM DUAL;


    --求指定日期所在月的最后一天
    SELECT LAST_DAY(TO_DATE('2012-01-01','yyyy-MM-dd')) FROM DUAL;


    --对日期四舍五入
    SELECT ROUND(TO_DATE('2012-01-01','yyyy-MM-dd'),'YEAR') FROM DUAL;
    SELECT ROUND(TO_DATE('2012-01-01','yyyy-MM-dd'),'MONTH') FROM DUAL;
    SELECT ROUND(TO_DATE('2012-01-01','yyyy-MM-dd'),'DAY') FROM DUAL;


    --对日期截断
    SELECT TRUNC(TO_DATE('2012-01-01','yyyy-MM-dd'),'YEAR') FROM DUAL;
    SELECT TRUNC(TO_DATE('2012-01-01','yyyy-MM-dd'),'MONTH') FROM DUAL;
    SELECT TRUNC(TO_DATE('2012-01-01','yyyy-MM-dd'),'DAY') FROM DUAL;




    --NVL空值转换,如果不是空就直接返回,如果是空就返回指定值
    SELECT NVL(NULL,'A') FROM DUAL;

    --DECODE条件输出转换
    SELECT DECODE(1,1,'A',2,'B') FROM DUAL;


    --TO_CHAR转换为字符串
    SELECT TO_CHAR(SYSDATE,'yyyy-MM-dd hi24:mi:ss) FROM DUAL;


    --TO_NUMBER字符转换为数字
    SELECT TO_NUMBER('123') FROM DUAL;


    --UID当前用户ID
    SELECT USERNAME, USER_ID FROM DBA_USERS WHERE USER_ID = UID;


    --分支
    SELECT (CASE WHEN DUMMY='X' THEN 0 ELSE 1 END) FROM DUAL;


    聚集函数:
    --MAX 最大值

    --MIN 最小值

    --AVG 平均值

    --STDDEV 标准差

    --VARIANCE 协方差

    --COUNT 计数
  • 相关阅读:
    U盘安装Ubuntu 10.4 Server
    MySQL操作使用
    Fedora17安装MySQL及配置
    笔记:重构
    Java 并发之线程安全
    Java 并发之共享对象
    UTF8 与 UTF16 编码
    matplotlib 初使用
    用 ggplot2 在同一个图上画多条颜色不同的线
    完成情况(一)
  • 原文地址:https://www.cnblogs.com/bayaim/p/9437220.html
Copyright © 2020-2023  润新知