sql server日期相关函数

选择昨天:

DECLARE @Yesterday date

SET @Yesterday = DATEADD(DAY,-1,GETDATE())

 输出:

2020-05-02

把date转成数字:

-- 获取时间
SET @Yesterday = DATEADD(DAY,-1,GETDATE())
SET @DateID = CAST(CAST(@Yesterday AS FLOAT) AS INT)

datepart函数:

Datepart()返回代表指定日期的指定日期部分的整数

语法:Datepart(datepart,date)  返回类型:int

SELECT DATEPART(yyyy,create_at) AS OrderYear,
DATEPART(mm,create_at) AS OrderMonth,
DATEPART(dd,create_at) AS OrderDay
FROM xxx
WHERE id=10

SQL server从datetime提取年月日

需要用到convert函数:

定义和用法

CONVERT() 函数是把日期转换为新数据类型的通用函数。

CONVERT() 函数可以用不同的格式显示日期/时间数据。

语法

CONVERT(data_type(length),data_to_be_converted,style)

data_type(length) 规定目标数据类型(带有可选的长度)。data_to_be_converted 含有需要转换的值。style 规定日期/时间的输出格式。

可以使用的 style 值:

120 或者 20 yyyy-mm-dd hh:mi:ss(24h)

我们只想要提取yyyy--mm-dd,用:

select convert(varchar(10),create_at,120) from xxx  where id=10 (长度为10截取前10位)

想要带上时分秒:

select convert(varchar,create_at,120) from xxx  where id=10

2020-04-29 16:46:43

只想要年月:

--按月
select convert(nvarchar(7),GETDATE(),120)

 2020-04

猜你喜欢

转载自www.cnblogs.com/youxin/p/12822611.html