首页 > 代码库 > 学习SQL日记(三)

学习SQL日记(三)

#1. 系统日期 、时间函数

  ^1.SELECT TO_CHAR (SYSDATE ,‘YYYY-MM-DD HH24:MI:SS‘) FROM DUAL -- 查询系统当前日期

  ^2.SELECT SYSTIMESTAMP FROM DUAL --查询带时区的系统日期       

  ^3.SELECT DBTIMEZONE FROM DUAL --查询当前时区

    SELECT SESSIONTIMEZONE FROM DUAL--查询当前会话的时区

  ^4.SELECT TO_CHAR(ADD_MONTHS(TO_DATE(‘2014-11-11‘ ,‘YYYY-MM-DD‘),-1),‘YYYY-MM-DD‘) FROM DUAL --返回指定日期前一个月的日期

     ADD_MONTHS(DATE , INTEGER )-- DATE :指定的日期   INTEGER:要加的月份数 如果为负数 则表示减去的月份数

  ^5.SELECT LAST_DAY(SYSDATE) FROM DUAL --返回参数指定日期对应月份的最后一天

  ^6.SELECT SYSDATE ,NEXT_DAY(SYSDATE ,‘星期一‘) FROM DUAL --返回当前日期向后一周 指定星期对应的日期

  ^7.SELECT EXTRACT(YEAR FROM SYSDATE) YEAR,
    EXTRACT(MONTH FROM SYSDATE) MONTH,
    EXTRACT (DAY FROM SYSDATE) DAY
    FROM DUAL          --从指定的时间当中提取到指定的日期部分

  ^8. SELECT MONTHS_BETWEEN(TO_DATE(‘2010-01-01‘ ,‘YYYY-MM-DD‘),SYSDATE) FROM DUAL

      --返回指定日期之间的月份数

#2. null 函数

  ^1.SELECT COALESCE(NULL,9-9,NULL) FROM DUAL --返回列表中第一个不为null的表达式结果

  ^2.SELECT * FROM XXX WHERE LNNVL(condition) --该函数可以得到除了condition要求条件之外的数据 包括null

  ^3.NVL(EXPR1,EXPR2)  --替换null值 表示如果expr1 为null值 则返回expr2的值

#3.数值型函数

  ^1.ABS(N) 返回n的绝对值

  ^2.MOD(N1,N2) --返回N1除以N2的余数

  ^3.SIGN(N) --返回参数n 的符号

  ^4.CEIL(n) -- 返回结果是大于等于输入参数的最小整数

  ^5.FLOOR(N) --返回结果是小于等于输入参数的最大整数

  ^6.SQRT(N) --返回n的平方根

  ^7.POWER(N1,N2) -- 得到n1的n2次幂

  ^8.LOG(N1,N2) -- 返回以n1为底 n2 的对数

 

学习SQL日记(三)