sql函数day1-2

博客介绍了多个SQL函数的使用。包括Months_between计算两时间月数差,Add_months返回指定月数后的时间,next_day返回未来一周指定天,last_day返回月最后一天。还介绍了trunc用于日期和数字截取,round用于日期和数字的四舍五入。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.Months_between()

//返回两个时间值的月数差

SELECT MONTHS_BETWEEN(to_date('20201203','yyyymmdd'),(to_date('20190524','yyyymmdd'))) FROM dual  

//将返回值向下取整

SELECT Floor(MONTHS_BETWEEN(to_date('20201203','yyyymmdd'),(to_date('20190524','yyyymmdd')))) FROM dual  

//将返回值向上取整

SELECT CEIL (MONTHS_BETWEEN(to_date('20201203','yyyymmdd'),(to_date('20190524','yyyymmdd')))) FROM dual  

2.Add_months(日期,所加月数)

//返回相应时间值x个月后的时间

SELECT ADD_MONTHS(to_date('20200524','yyyymmdd'),5) FROM dual  

3.next_day(日期,)

//返回未来一周内的第几天/星期几

SELECT next_day(to_date('20221025','yyyymmdd'),'星期一') FROM dual 

4.last_day(日期)

//返回日期对应月的最后一天

SELECT last_day(to_date('20221025','yyyymmdd')) FROM dual 

5.trunc

①trunc(日期,year/month)

//返回当年/月的第一天

SELECT trunc(to_date('20220415','yyyymmdd'),'month') FROM dual  

②trunc还可以用于数字截取

trunc(a,b)

//a为操作数,b为截取的位数(b为正,则小数点向右截取相应位数;b为负,则小数点向左截取相应位数)

SELECT trunc(2236,-3) FROM dual  

返回2000

6.round(日期,year/month)

//日期的四舍五入,返回该年(月)的第一天(舍)或最后一天(入)

SELECT round(to_date('20221025','yyyymmdd'),'year') FROM dual  

PS:round(a,b),a表示要四舍五入的数,b表示要保留的位数(b取正数表示小数点后保留几位,b取负数表示小数点前保留几位)

SELECT round(55485455.2564,2) FROM dual  

返回55485455.26

SELECT round(55485455.2564,-2) FROM dual  

返回55485500

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值