关闭

sql server 求以日期所在周的第一天 (星期一)和 最后一天(星期日) 函数

标签: sql serverfunctionjoin
775人阅读 评论(0) 收藏 举报
分类:

SET ANSI_NULLS ON

GO
SET QUOTED_IDENTIFIER ON
GO
create FUNCTION [dbo].[dm_OneDay_GetWeekFirstAndEndDay](@tmpDate DATETIME)
RETURNS varchar(200)
AS
BEGIN
declare @first2endDay varchar(200)

    SELECT @first2endDay = a.FirstDay+'~'+b.EndDay  FROM (    
        SELECT 1 AS ID, case when datepart(weekday,@tmpDate)=1 then   convert(varchar(100),dateadd(dd,-6,@tmpDate),23) else convert(varchar(100),DATEADD(wk, DATEDIFF(wk,0,@tmpDate), 0),23) end  AS FirstDAy
    ) a
    LEFT JOIN (
        SELECT 1 AS ID,case when datepart(weekday,@tmpDate) =1 then   convert(varchar(100),@tmpDate,23)  else  convert(varchar(100),DATEADD(wk, DATEDIFF(wk,0,@tmpDate), 6),23) end  AS EndDay
    ) b
    ON a.ID = b.ID
    RETURN @first2endDay
END
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:48098次
    • 积分:821
    • 等级:
    • 排名:千里之外
    • 原创:36篇
    • 转载:5篇
    • 译文:0篇
    • 评论:11条
    文章分类
    最新评论