SP
CREATE PROCEDURE [dbo].[GetDateDaily]
@Month int=null ,
@Year int=null
AS
BEGIN
DECLARE @DATEFROM AS DATETIME
DECLARE @DATETO AS DATETIME
DECLARE @FirstPart AS VARCHAR(50)
DECLARE @HOLDER TABLE(DATE DATETIME,n varchar(50))
SET @DATEFROM =DATEADD(month,@Month-1,DATEADD(year,@Year-1900,0));
SET @DATETO = DATEADD(day,-1,DATEADD(month,@Month,DATEADD(year,@Year-1900,0)));
SELECT @FirstPart = (DATENAME(WEEKDAY, (@DATEFROM)))
INSERT INTO @HOLDER (DATE,n)
VALUES(@DATEFROM,@FirstPart)
WHILE @DATEFROM < @DATETO
BEGIN
SELECT @DATEFROM = DATEADD(D, 1, (@DATEFROM))
SELECT @FirstPart = (DATENAME(WEEKDAY, (@DATEFROM)))
INSERT INTO @HOLDER(DATE,n )
VALUES(@DATEFROM,@FirstPart)
END
select CONVERT(varchar(10),DATE,105) as DATE,n from @HOLDER
Execution
EXEC GetDateDaily 10 ,2014
output
01-10-2014 Wednesday
02-10-2014 Thursday
03-10-2014 Friday
04-10-2014 Saturday
05-10-2014 Sunday
06-10-2014 Monday
07-10-2014 Tuesday
08-10-2014 Wednesday
09-10-2014 Thursday
10-10-2014 Friday
11-10-2014 Saturday
12-10-2014 Sunday
13-10-2014 Monday
14-10-2014 Tuesday
15-10-2014 Wednesday
16-10-2014 Thursday
17-10-2014 Friday
18-10-2014 Saturday
19-10-2014 Sunday
20-10-2014 Monday
21-10-2014 Tuesday
22-10-2014 Wednesday
23-10-2014 Thursday
24-10-2014 Friday
25-10-2014 Saturday
26-10-2014 Sunday
27-10-2014 Monday
28-10-2014 Tuesday
29-10-2014 Wednesday
30-10-2014 Thursday
31-10-2014 Friday
CREATE PROCEDURE [dbo].[GetDateDaily]
@Month int=null ,
@Year int=null
AS
BEGIN
DECLARE @DATEFROM AS DATETIME
DECLARE @DATETO AS DATETIME
DECLARE @FirstPart AS VARCHAR(50)
DECLARE @HOLDER TABLE(DATE DATETIME,n varchar(50))
SET @DATEFROM =DATEADD(month,@Month-1,DATEADD(year,@Year-1900,0));
SET @DATETO = DATEADD(day,-1,DATEADD(month,@Month,DATEADD(year,@Year-1900,0)));
SELECT @FirstPart = (DATENAME(WEEKDAY, (@DATEFROM)))
INSERT INTO @HOLDER (DATE,n)
VALUES(@DATEFROM,@FirstPart)
WHILE @DATEFROM < @DATETO
BEGIN
SELECT @DATEFROM = DATEADD(D, 1, (@DATEFROM))
SELECT @FirstPart = (DATENAME(WEEKDAY, (@DATEFROM)))
INSERT INTO @HOLDER(DATE,n )
VALUES(@DATEFROM,@FirstPart)
END
select CONVERT(varchar(10),DATE,105) as DATE,n from @HOLDER
Execution
EXEC GetDateDaily 10 ,2014
output
01-10-2014 Wednesday
02-10-2014 Thursday
03-10-2014 Friday
04-10-2014 Saturday
05-10-2014 Sunday
06-10-2014 Monday
07-10-2014 Tuesday
08-10-2014 Wednesday
09-10-2014 Thursday
10-10-2014 Friday
11-10-2014 Saturday
12-10-2014 Sunday
13-10-2014 Monday
14-10-2014 Tuesday
15-10-2014 Wednesday
16-10-2014 Thursday
17-10-2014 Friday
18-10-2014 Saturday
19-10-2014 Sunday
20-10-2014 Monday
21-10-2014 Tuesday
22-10-2014 Wednesday
23-10-2014 Thursday
24-10-2014 Friday
25-10-2014 Saturday
26-10-2014 Sunday
27-10-2014 Monday
28-10-2014 Tuesday
29-10-2014 Wednesday
30-10-2014 Thursday
31-10-2014 Friday

