首页 > 数据库技术 > 详细

Oracle操作2

时间:2020-03-07 23:49:45      阅读:122      评论:0      收藏:0      [点我收藏+]

--
绝对值 select abs(-5) from dual; --向上取整 select ceil(-5.9) from dual; --向下取整 select floor(-5.6) from dual; --幂运算(3的2次幂) select power(3,2) from dual; --平方根(只能开平方根) select sqrt(9) from dual; --取模 select mod(10,3) from dual; --四舍五入 select round(5.4) from dual; --截断(默认截取整数),(3代表保留3位小数,-3代表截掉最后三位整数并用0补齐) select trunc(314568.1415926-3) from dual;

 

--日期函数
--SYSDATE获取系统时间(注意:该函数没有括号)
select sysdate from dual;
--SYSTIMESTAMP获取系统时间戳(精确度更高)
--06-3月 -20 03.29.01.019000 下午 +08:00
select systimestamp from dual;
--日期函数进行加减运算
select sysdate+10 ,sysdate from dual;
--systimestamp加减运算后自动转成了sysdate格式
select systimestamp-10 from dual;
--得出的小数以天为单位
select sysdate-e.hiredate from emp e;

--加减指定月数
select add_months(hiredate,1) ,hiredate from emp;
--返回两个日期间的月数
select months_between(sysdate,hiredate),sysdate-hiredate from emp;
--当前指定日期所在月的最后一天 
select last_day(hiredate) from emp;
--返回指定日期的下一个星期几
--(不能为周几,只能是星期几,但可以为1-7,1代表周日,7的代表周六)
select next_day(sysdate,星期六) from emp;
--日期的截断,(默认截断到天,month表示截断到月,year截断到年)
select trunc(hiredate) from emp;

 

练习

--查询每个员工的姓名,以及到今天他共工作了几天
select ename,sysdate-emp.hiredate,round(sysdate-emp.hiredate) from emp;
--查询在该月最后一天入职的员工姓名及入职日期
select ename,hiredate from emp where hiredate=last_day(hiredate);
--查询在该月第一天入职的员工姓名及入职日期
select ename,hiredate from emp where hiredate=trunc(hiredate,month);

 

--时区
--数据库时区
select DBTIMEZONE from dual;
--会话时区
select SESSIONTIMEZONE from dual;
--获取当前日期包含时区
select CURRENT_DATE from dual;
--获取当前系统时间
select sysdate from dual;

 

Oracle操作2

原文:https://www.cnblogs.com/qilin20/p/12427051.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!