If you want to exclude holidays as well as weekends you probably need to create a table of dates and whether they are valid.<br>
The following script (adapted from one in the <A HREF="
TARGET="_new">
library) has a column called countable_day that i've set to 1 for a working day and 0 for a weekend. Update the table setting it to 0 for holidays. You can then do statements summing the countable_days like:<br>
<br>
<FONT FACE=monospace>select sum(countable_day) from time_dimension<br>
where the_date >= "1999-03-06" and the_date < "1999-03-15"</font><br>
<br>
to create the table:<br>
<FONT FACE=monospace><br>
CREATE TABLE [dbo].[time_dimension] (<br>
[time_id] [int] IDENTITY (1, 1) NOT NULL<br>
[the_date] [datetime] NULL ,<br>
[the_day] [nvarchar] (15) NULL ,<br>
[the_month] [nvarchar] (15) NULL ,<br>
[the_year] [smallint] NULL ,<br>
[day_of_month] [smallint] NULL ,<br>
[week_of_year] [smallint] NULL ,<br>
[month_of_year] [smallint] NULL ,<br>
[quarter] [nvarchar] (2) NULL ,<br>
[fiscal_period] [nvarchar] (20) NULL,<br>
[countable_day] [int] NULL<br>
 

ON [PRIMARY]<br>
<br>
DECLARE @WeekString varchar(12),<br>
@dDate SMALLDATETIME,<br>
@sMonth varchar(20),<br>
@iYear smallint,<br>
@iDayOfMonth smallint,<br>
@iWeekOfYear smallint,<br>
@iMonthOfYear smallint,<br>
@sQuarter varchar(2),<br>
@sSQL varchar(100),<br>
@adddays int,<br>
@countable_day int<br>
<br>
SELECT @adddays = 1 --Incrementing the days by one<br>
SELECT @dDate = '01/01/1960' --The start date<br>
<br>
WHILE @dDate < '12/31/2001' --End Date<br>
BEGIN<br>
<br>
SELECT @WeekString = DATENAME (dw, @dDate)<br>
SELECT @sMonth=DATENAME(mm,@dDate)<br>
SELECT @iYear= DATENAME (yy, @dDate)<br>
SELECT @iDayOfMonth=DATENAME (dd, @dDate)<br>
SELECT @iWeekOfYear= DATENAME (week, @dDate)<br>
SELECT @iMonthOfYear=DATEPART(month, @dDate)<br>
SELECT @sQuarter = 'Q' + CAST(DATENAME (quarter, @dDate)as varchar(1))<br>
SELECT @countable_day = case datepart(weekday, @dDate)<br>
when 1 then 0 <br>
when 7 then 0 <br>
else 1 <br>
end<br>
<br>
INSERT INTO time_dimension(the_date, the_day, the_month, the_year, day_of_month, Week_of_year, month_of_year, quarter, countable_day) <br>
VALUES<br>
(@dDate, @WeekString, @sMonth, @iYear, @iDayOfMonth, @iWeekOfYear, @iMonthOfYear, @sQuarter, @countable_day)<br>
SELECT @dDate = @dDate + @adddays<br>
END<br>
GO<br>
</font>