2025年sql文本格式(sql文本格式转换为数字格式日期)

sql文本格式(sql文本格式转换为数字格式日期)svg xmlns http www w3 org 2000 svg style display none svg

大家好,我是讯享网,很高兴认识大家。



 <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path> </svg> <p>日期函数<br /> 1、当前系统时间<br /> SELECT SYSDATE FROM dual ;<br /> 2、修改日期显示格式<br /> ALTER SESSION SET NLS_DATE_FORMAT&#61;‘yyyy-mm-dd hh24:mi:ss’;<br /> SELECT SYSDATE FROM dual ;<br /> 3、日期函数运算<br /> 日期-数字&#61;日期<br /> 日期&#43;数字&#61;日期<br /> 日期-日期&#61;数字&#xff08;天数&#xff09;<br /> SELECT SYSDATE &#43; 3 FROM dual ;三天之后的日期<br /> SELECT SYSDATE - 3 FROM dual ;三天之前的日期<br /> SELECT SYSDATE-hiredate FROM emp; 雇佣天数&#xff08;出现小数&#xff09;<br /> SELECT trunc(SYSDATE-hiredate)from emp;雇佣天数<br /> 4、日期操作<br /> &#xff08;1&#xff09;ADD_MONTHS(日期&#xff0c;数字) 在指定的日期上加入指定的月数&#xff0c;求出新的日期<br /> SELECT SYSDATE,ADD_MONTHS(SYSDATE, 3 ) FROM dual ;三个月之后的日期 ,<br /> SELECT SYSDATE,ADD_MONTHS(SYSDATE, -3 ) FROM dual ;三个月之前的日期 ,<br /> &#xff08;2&#xff09;MONTHS_BETWEEN(日期1&#xff0c;日期2) 两个日期间的月份数<br /> SELECT TRUNC(MONTHS_BETWEEN(sysdate,hiredate))FROM emp;雇佣总月数<br /> SELECT TRUNC(MONTHS_BETWEEN(sysdate,hiredate)/12)FROM emp;雇佣总年数<br /> 查看雇佣信息<br /> SELECT TRUNC(MONTHS_BETWEEN(sysdate,hiredate)/12) 已雇佣年数,<br /> TRUNC(MOD(MONTHS_BETWEEN(sysdate,hiredate),12)) 已雇佣月数,<br /> TRUNC(sysdate-ADD_MONTHS(hiredate,MONTHS_BETWEEN(sysdate,hiredate))) 已雇佣天数<br /> FROM emp ;<br /> &#xff08;3&#xff09;NEXT_DAY(日期&#xff0c;星期数) 求出下一个星期X的具体日期<br /> SELECT SYSDATE,NEXT_DAY(SYSDATE,‘星期日’) FROM dual ;下一个星期日<br /> &#xff08;4&#xff09;LAST_DAY(日期) 指定日期的最后一天的日期<br /> SELECT SYSDATE, LAST_DAY(SYSDATE) FROM dual ; 当前日期所在月的最后一天<br /> &#xff08;5&#xff09;EXTRACT(格式FROM数据) 抽取日期信息<br /> SELECT EXTRACT(YEAR FROM DATE ‘2001-09-19’) years ,<br /> EXTRACT(MONTH FROM DATE ‘2001-09-19’) months ,<br /> EXTRACT(DAY FROM DATE ‘2001-09-19’) days<br /> FROM dual ;<br /> &#xff08;6&#xff09;计算复杂时间间隔<br /> SELECT<br /> EXTRACT(DAY FROM TO_TIMESTAMP(‘1982-08-13 12:17:57’,‘yyyy-mm-dd hh24:mi:ss’)<br /> -TO_TIMESTAMP(‘1981-09-27 09:08:33’,‘yyyy-mm-dd hh24:mi:ss’)) days<br /> FROM dual ;</p> 

讯享网

转换函数
(1)TO_CHAR(日期|数字|列,转换格式)
将制定的数据按照指定的格式变为字符串型
SELECT SYSDATE 当前系统时间,TO_CHAR(SYSDATE,‘YYYY-MM-DD’) 格式化日期,
TO_CHAR(SYSDATE,‘YYYY-MM-DD HH24:MI:SS’) 格式化日期时间,
TO_CHAR(SYSDATE,‘FMYYYY-MM-DD HH24:MI:SS’) 去掉前导0的日期时间
FROM dual ;





(2)TO_DATE(字符串|列,转换格式)
将制定的字符串按照指定的格式变为日期型
SELECT TO_DATE(‘1979-09-19’,‘YYYY-MM-DD’) FROM dual ;
SELECT TO_TIMESTAMP(‘1981-09-27 18:07:10’,‘YYYY-MM-DD HH24:MI:SS’) datetime
FROM dual ;




讯享网

(3)TO_NUMBER(字符串|列)
将指定的数据类型变为数字型
SELECT TO_NUMBER(‘09’) + TO_NUMBER(‘19’) 加法计算,
TO_NUMBER(‘09’) * TO_NUMBER(‘19’) 乘法计算
FROM dual ;



通用函数
(1)NVL(数字|列,默认值)
如果现实的数字是null,则使用默认值表示
SELECT NVL(null,0),NVL(3,0) FROM dual ; 如果是NULL输出后面的默认值,如果不是NULL输出第一个参数值
在这里插入图片描述
(2)NVL2(数字|列,返回结果1,返回结果2)
判断指定的列是否为null,如果不为null则返回1,如果为空则返回结果2.
当comm不为NULL输出sal+comm,如果为NULL输出sal。
在这里插入图片描述
(3)NULLIF(表达式1,表达式2)
比较表达式1和表达式2的结果是否相等,如果相等返回NULL,如果不等返回表达式1
在这里插入图片描述
(4)DECODE(列|值,判断值1,显示结果1,判断值2,显示结果2…)如果现实的数字是null,则使用默认值表示
job为CLERK 显示业务员,job为SALESMAN显示销售人员…
在这里插入图片描述
(5)CASE 列| 数值WHEN 表达式1 THEN 显示结果1…ELSE 表达式n…用于实现多条件判断
当job为CLERK sal1.1 当job 为SALESMAN sal1.2…
在这里插入图片描述
(6)COALESCE(表达式1,表达式2,…,表达式n)
将表达式逐个判断,如果表达式1的内容是null,则显示表达式2,如果表达式2的内容是null,则显示表达式3
SELECT comm ,COALESCE(comm,100,2000) , COALESCE(comm,null,2000) FROM emp;
当comm为NULL显示100,当comm和null显示2000
在这里插入图片描述






















小讯
上一篇 2025-05-01 18:52
下一篇 2025-06-02 07:03

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/172628.html