
SQL SERVER查询时间是一年中第几周,使用函数 datepart()。
例:查询 ‘2017-1-1’是2017年的第几周,语句如下
select datepart(wk,'2017-1-1')datepart函数说明
一、函数功能:DATEPART() 函数用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等。
二、语法:DATEPART(datepart,date)
三、参数说明:date 参数是合法的日期表达式。datepart 参数可以是下列的值:
四、实例演示
假设我们有下面这个 "Orders" 表:
我们使用如下 SELECT 语句:
SELECT DATEPART(yyyy,OrderDate) AS OrderYear,DATEPART(mm,OrderDate) AS OrderMonth,
DATEPART(dd,OrderDate) AS OrderDay
FROM Orders
WHERE OrderId=1
结果:
DECLARE @a DATETIME = '2016-01-01' ,
@b DATETIME = '2017-01-01'
SELECT a周数 ,
b业绩
FROM ( SELECT CONVERT(VARCHAR, theweek) + '周' AS 周数,theweek
FROM ( SELECT number / 7 + 1 AS theweek
FROM masterspt_values
WHERE type = 'p'
AND number < DATEDIFF(dd, @a, @b)
) t
GROUP BY theweek
) a
LEFT JOIN ( SELECT DATENAME(week, [addtime]) + '周' AS 周数 ,
SUM(price) AS 业绩
FROM [table]
WHERE YEAR([addtime]) = '2016'
GROUP BY DATENAME(week, [addtime]) + '周'
) b ON a周数 = b周数
ORDER BY atheweek
数据库中是跟随系统的时间格式,日期+时间的标准格式。
一般是在检索的时候,使用convert来格式时间的显示格式。
如: select CONVERT(VARCHAR(10),GETDATE(),102),显示结果即:年月日。
convert函数语法:
CONVERT(data_type(length),data_to_be_converted,style)
data_type(length) 规定目标数据类型(带有可选的长度)。data_to_be_converted 含有需要转换的值。style 规定日期/时间的输出格式。
可以使用的 style 值如图:
例:
以上就是关于SQL SERVER查询时间是一年中第几周的函数全部的内容,包括:SQL SERVER查询时间是一年中第几周的函数、用SQL把时间用datename函数汇总后怎么根据周来排序、sql2005中能不能把datetime里的时分秒去掉,只保留年月日等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)