SQL 实现日期(时间)相加减

时间:2022-09-22 14:59:27

前言

时间(日期)的相加减是编程中经常会遇到的场景,我们使用的很多第三方库都会提供相应的API来供程序员实现时间(日期)的相加减。楼主一直使用的Qt库的QDate类就有提供addDays()系列API供程序员调用。在结构化查询语言SQL中同样可以实现时间(日期)的相加减,下面就来看几个例子。

SQL实现日期(时间)加减实例

SQL实现时间相加减:
select date(date(),'-1 days') as 昨天, date() as 今天, date(date(),'+1 days') as 明天;
结果截图:
SQL 实现日期(时间)相加减
date()函数返回当前日期,date(arg1,arg2)函数通过参数arg1指定一个日期,参数arg2通过一个字符串指定要增减的天数(格式为‘? days’其中?号可为正数也可以负数,正数表示增加几天,负数表示减少几天)。

SQL实现日期时间相加减:
select datetime(datetime(),'-1 days') as 昨天, datetime() as 今天, datetime(datetime(),'+1 days') as 明天;
结果截图:
SQL 实现日期(时间)相加减
datetime()与date()使用情况一模一样,只是会额外显示时间,奇怪的是楼主当前的系统时间明明是晚上的7:42,为什么select出来是11:38:31? 难道是通过网络取的另外一台机器上的时间,但不影响我们理解datetime()实现日期时间相加减,只是Mark一下。。。