Oracle关于时间的操作
Oracle获取时间
作者:邱名涛
撰写时间:2019年04月08日
关键技术:Oracle
//SYSDATE:当前时间
//hire_date:时间数据
1.怎么获得今天是星期几,还关于其它日期函数用法
–可以用to_char来解决,如
select to_char(to_date('2019-03-26','yyyy-mm-dd'),'day')
from dual;
2.在获取之前可以设置日期语言,
如 :ALTER SESSION SET NLS_DATE_LANGUAGE=‘AMERICAN’;
–还可以在函数中指定
select to_char(to_date('2019-03-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE = American')
from dual;
3.其它更多用法,可以参考to_char与to_date函数
–如获得完整的时间格式
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss')
from dual;
4.本月的天数
SELECT to_char(last_day(SYSDATE),'dd') days
FROM dual
5.今年的天数
select add_months(trunc(sysdate,'year'), 12) - trunc(sysdate,'year')
from dual
6.下个星期一的日期
SELECT Next_day(SYSDATE,'monday')
FROM dual
7. --时间筛选
SELECT last_name, hire_date, department_id
FROM employees
WHERE TO_CHAR(hire_date,'yyyy-mm-dd')='1987-09-17'
8.时间添加字符
select to_char(sysdate,'yyyy"年"mm"月"dd"日" hh:mi:ss')
from dual;
9. 日期相减的天数
select last_name,sysdate,hire_date,(sysdate-hire_date)/365 as weeks from employees
where last_name like 'G%';