<div class="codebody" id="code78191"> USE [MSSQL] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE FUNCTION [dbo].[My_OneDay_GetWeekFirstAndEndDay](@tmpDate DATETIME) RETURNS @tmpTable TABLE(FirstDay DATETIME,EndDay DATETIME) AS BEGIN INSERT INTO @tmpTable SELECT a.FirstDay,b.EndDay FROM ( SELECT 1 AS ID,DATEADD(wk,DATEDIFF(wk,@tmpDate),0) AS FirstDAy ) a LEFT JOIN ( SELECT 1 AS ID,6) AS EndDay ) b ON a.ID = b.ID RETURN End
<div class="codebody" id="code47879"> USE [MSSQL] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE FUNCTION [dbo].[MY_Range_GetWeekFirstAndEndDays](@tmpDateSTART DATETIME,@tmpDateEND DATETIME) RETURNS @tmpTable TABLE(WeekOrder INT,FirstDay DATETIME,EndDay DATETIME) AS BEGIN DECLARE @tmpDate DATETIME DECLARE @index INT SET @tmpDate=@tmpDateSTART SET @index=1 WHILE @tmpDate <=@tmpDateEND BEGIN INSERT INTO @tmpTable SELECT @index,a.FirstDay,0) AS FirstDAy) a LEFT JOIN ( SELECT 1 AS ID,6) AS EndDay) b ON a.ID = b.ID SET @tmpDate=DATEADD(DAY,7,@tmpDate) SET @index=@index+1 END RETURN End