Oracle和SQL Server 用当前日期减去 '0001-01-01' 得出的天数不一致,相差2天,谁知道原因?

Oracle和SQL Server 用当前日期减去 '0001-01-01' 得出的天数不一致,相差2天,谁知道原因?,第1张

假设表T,字段S_TIME是你需要的列:

(1) 若S_TIME为date类型,计算相差天数的SQL语句:SELECT TRUNC(SYSDATE)-TRUNC(S_TIME) FROM T WHERE 你需要的条件

(2)若S_TIME为VARCHAR2类型,计算相差天数的SQL语句:SELECT TRUNC(SYSDATE)-TO_DATE(S_TIME,'YYYY-MM-DD') FROM T WHERE 你需要的条件

先给此表增加一个数字类型的列“diff”,然执行如下sql语句:

update

[表名]

set

[diff]=datediff(day,[a日期列],[b日期列])

datediff函数的第一个参数设置为day时,计算的是两个日期以天为单位的差数,设置为month、year时以此类推。

周六是

datepart(week,getdate())=6

周日是

datepart(week,getdate())=7

利用此函数避开取值为6,7的日子即可


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9422551.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存