Oracle操作2
2020-03-07 23:07 默默不语 阅读(203) 评论(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;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
2018-03-07 《我们应当怎样做需求分析》读书笔记