sqlite sqlserver 时间函数
1、DATEADD(datepart,number,date)
作用:返回给指定日期加一个时间间隔后新的datetime值
参数说明:
datepart:指定为日期的哪部分增加数值。
常用的值有:年(yy/yyyy),季度(qq/q),月份(mm/m),日(day/dd/d),周(wk/ww),小时(hh),分钟(mi,n),秒(ss/s)。
number:指定要增加的数值。如果是非整数将会舍去小数部分。负数表示减去相应的时间间隔。
date:表示要处理的日期。
用法:
-- 在指定日期上加三个月
select DATEADD(mm,3,'2020-12-30');
-- 指定日期减一天
select DATEADD(day,-1,'2020-12-30');
2、DATEDIFF(datepart,startdate,enddate)
year 或 yy 或 yyyy: 年
quarter 或 qq 或 q: 季度
month 或 mm 或 m: 月
day 或 dd 或 d: 天
week 或 wk 或 ww: 周
hour 或 hh: 小时
minute 或 mi 或 n: 分钟
second 或 ss 或 s: 秒
millisecond 或 ms: 毫秒
作用:指定两个时间相差的时间数。比如天、小时、分钟等等。
datepart:指定返回的日期时间维度(天、小时、分钟)。
startdate:可以理解被减数。
enddate:可以理解减数。如果startdate大于enddate返回负值。
SELECT DATEDIFF(day,'2021-02-05','2021-02-09') AS DiffDate --返回 4天
3、DATENAME(deatpart,date)
作用:返回指定日期的指定部分的字符串。
date:日期表达式
用法:
DateName(quarter,GetDate()) as '第几季度'
DateName(week,GetDate()) as '一年中的第几周'
DateName(DAYOFYEAR,GetDate()) as '一年中的第几天'
DateName(year,GetDate()) as '年'
DateName(month,GetDate()) as '月'
DateName(day,GetDate()) as '日'
DateName(hour,GetDate()) as '时'
DateName(minute,GetDate()) as '分'
DateName(second,GetDate()) as '秒'
4、DATEPART(deatpart,date)
返回指定日期中指定部分的整数。用法和DATENAME相似,返回值为整数。比如:
SELECT DATEPART(weekday,'20210209') --返回值为2
SELECT DateName(weekday,'20210209') --返回值为星期二
5、DAY|MONTH|YEAR 函数
作用:返回指定日期所在 日/月/年的部分。可以用DATEPART替换。
SELECT DAY('2021-02-09') --返回 9
SELECT MONTH('2021-02-09') --返回 2
SELECT YEAR('2021-02-09') --返回 2021
6、EOMONTH(input[,month_to_add])
作用:该函数是在SQLServer 2012中引入的。EOMONTH函数用来返回指定日期之前或之后某个月的最后一天的日期。
语法结构:=EOMONTH(开始日期,指定起始日期前后的月份)
用法;
DECLARE @date DATETIME = '2021-02-09';
SELECT EOMONTH ( @date,7) AS Result; --加七个月的月末日期 2021-09-30
SELECT EOMONTH ( @date,-2) AS Result; -- 减两个月的月末日期 2020-12-31
7、FROMPARTS
作用:根据输入的年、月、日参数生成一个日期值,并返回。
格式:DATEFROMPARTS(year,month,day)
year:输入年份的整数值
month:输入1~12之间的月份数
day:输入年月所对应的day整数值
注意:如果上面三个参数,任意一个参数输入null,则返回null。
用法: SELECT DATEFROMPARTS (2020,2,09) AS [生成日期数据]; --2020-02-09
8、GETDATE()
这个太常见了,就是获取系统当前时间。
SELECT GETDATE() --返回结果 2021-02-09 08:28:11.307
9、GETUTCDATE()
返回当前的UTC时间。国内使用减八小时。
SELECT GETUTCDATE() --返回结果 2021-02-09 00:29:21.710
---------------------------------------------------------------------
whereSql := 'substr(f_billNumber,1,4)=' + QuotedStr(yymm)
else
whereSql := 'left(f_billNumber,4)=' + QuotedStr(yymm);
---------------------------------------------------------------------
near syntax error
insert into [t_Table] ([fName]) select '张三'
where not exists (SELECT 1 FROM [t_Table] where [fName] = '张三');
insert into ErrorConfig(Type,Value1)
select 'RetryWaitSeconds','3'
where not exists(select * from ErrorConfig where Type='RetryWaitSeconds')
\
计算机当前时间
SELECT date(‘now’)
计算机当前月份的最后一天
SELECT date(‘now’,’start of month’,’+1 month’,’-1 day’)
计算UNIX 时间戳1092941466表示的日期和时间
SELECT datetime(‘1092941466’,’unixepoch’)
计算 UNIX 时间戳1092941466 表示的本地日期和时间
SELECT datetime(‘1092941466’,’unixepoch’,’localtime’)
计算机当前UNIX 时间戳
SELECT strftime(‘%s’,’now’)
两个日期之间相差多少天
SELECT jolianday(‘now’)-jolianday(‘1981-12-23’)
两个日期时间之间相差多少秒
SELECT julianday('now')*86400 - julianday('2004-01-01 02:34:56')*86400
计算今年十月份第一个星期二的日期
SELECT date('now','start of year','+9 months','weekday 2');
||字符串相加
delphi 日期时间相差 (2013-12-09 06:12:14)转载▼
标签: delphi it 分类: 开发资源
uses
DateUtils
function YearsBetween(const ANow, AThen: TDateTime): Integer; //年差
function MonthsBetween(const ANow, AThen: TDateTime): Integer;//月差
function WeeksBetween(const ANow, AThen: TDateTime): Integer;//星期差
function DaysBetween(const ANow, AThen: TDateTime): Integer;//日差
function HoursBetween(const ANow, AThen: TDateTime): Int64;//小时差
function MinutesBetween(const ANow, AThen: TDateTime): Int64;//分钟差
function SecondsBetween(const ANow, AThen: TDateTime): Int64;//秒差
function MilliSecondsBetween(const ANow, AThen: TDateTime): Int64; //豪秒差 1000进制
function IncYear(const AValue: TDateTime; const ANumberOfYears: Integer = 1): TDateTime; //年相加减
function IncWeek(const AValue: TDateTime;const ANumberOfWeeks: Integer = 1): TDateTime; //月相加减
function IncDay(const AValue: TDateTime;const ANumberOfDays: Integer = 1): TDateTime; //日相加减
function IncHour(const AValue: TDateTime;const ANumberOfHours: Int64 = 1): TDateTime; //小时相加减
function IncMinute(const AValue: TDateTime; const ANumberOfMinutes: Int64 = 1): TDateTime; //分钟相加减
function IncSecond(const AValue: TDateTime;const ANumberOfSeconds: Int64 = 1): TDateTime; //秒相加减
function IncMilliSecond(const AValue: TDateTime;const ANumberOfMilliSeconds: Int64 = 1): TDateTime; //毫秒相加减
详细请看
DateUtils 里面封装了很多日期时间函数