SQL 中怎么改日期格式
比如把数字20230601改成日期格式的2023/06/01
把2023/06/01改成数字格式或者文本格式的20230601
数字可以先to_char再转日期
日期可以to_char转字符串
1.SYSDATE
SELECT SYSDATE FROM DUAL;
-- 2020年3月19号
2.MONTHS_BETWEEN(d1,d2)函数
SELECT MONTHS_BETWEEN(TO_DATE('20201201','yyyymmdd'),TO_DATE('20200201','yyyymmdd')) FROM DUAL;
SELECT MONTHS_BETWEEN(TO_DATE('20201201','yyyymmdd'),TO_DATE('20200211','yyyymmdd')) FROM DUAL;
3.NEXT_DAY(d,s)函数
SELECT NEXT_DAY(TO_DATE('20200319','yyyymmdd'),3) FROM DUAL;
-- 下周星期三的日期
4.ROUND(d[,fmt])函数
SELECT ROUND(TO_DATE('20200319','yyyymmdd'),'yy') FROM DUAL;
SELECT ROUND(TO_DATE('20200719','yyyymmdd'),'yy') FROM DUAL;
SELECT ROUND(TO_DATE('20200719','yyyymmdd'),'mm') FROM DUAL;
SELECT ROUND(TO_DATE('20200715','yyyymmdd'),'mm') FROM DUAL;
5.TRUNC(d[,fmt])函数
SELECT TRUNC(TO_DATE('20200715','yyyymmdd'),'mm') FROM DUAL;
SELECT TRUNC(TO_DATE('20200715','yyyymmdd'),'yy') FROM DUAL;
可以使用以下SQL语句来修改日期格式:
将数字格式的日期20230601转换为2023/06/01的文本格式:
select date_format('20230601','%Y/%m/%d');
将文本格式的日期2023/06/01转换为数字格式的日期20230601:
select str_to_date('2023/06/01','%Y/%m/%d');
需要注意的是,在使用str_to_date
函数时,要按照指定格式输入要转换的日期字符串。而在使用date_format
函数时,要在第二个参数中指定想要输出的日期格式。