1.trunc 函数
截断函数既可以截取日期 也可以截取数字
返回今天的日期 select trunc(sysdate) from dual; --07-6月 -20
返回当月第一天 select trunc(sysdate,'mm') from dual; --01-6月 -20
返回当年第一天 三种写法 select trunc(sysdate,'yy') from dual; --01-1月 -20 select trunc(sysdate,'yyyy') from dual;select trunc(sysdate,'year') from dual;
2.extract函数
表达式 extract(fileld from source)
extract函数从日期/时间数值里抽取子域,比如年、小时等。
source必须是一个timestamp, time, interval类型的值表达式(类型为date的表达式转换为 timestamp,因此也可以用)。
field 是一个标识符或者字符串,它指定从源数据中抽取的域。
extract 函数返回类型为double precision的数值。
提取年份
SELECT EXTRACT(YEAR FROM TIMESTAMP '2020-06-07 20:38:40');
Result: 2020
提取月份
<!-- 对于timestamp值,它是一年里的月份数(1-12);对于interval值, 它是月的数目,然后对 12 取模(0-11) -->
SELECT EXTRACT(MONTH FROM TIMESTAMP '2020-02-16 20:38:40');
Result: 2
SELECT EXTRACT(MONTH FROM INTERVAL '2 years 3 months');
Result: 3
SELECT EXTRACT(MONTH FROM INTERVAL '2 years 13 months');
Result: 1
提取日期
<!-- 对于timestamp值,(月份)里的日期(1-31);对于interval,天数 -->
SELECT EXTRACT(DAY FROM TIMESTAMP '2020-06-07 20:38:40');
Result: 07
SELECT EXTRACT(DAY FROM INTERVAL '40 days 1 minute');
Result: 40
文章来源: 博客园
- 还没有人评论,欢迎说说您的想法!