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;
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
提取月份
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
提取日期
SELECT EXTRACT(DAY FROM TIMESTAMP "2020-06-07 20:38:40");
Result: 07
SELECT EXTRACT(DAY FROM INTERVAL "40 days 1 minute");
Result: 40