• Here is another way of doing it using a CTE instead of a table, but I don't understand the request that the report shouldn't use another table. Who cares what happened behind the scenes if the report brings the requested data and has no performance problems?

    declare @date datetime

    set @date = '20090501';

    with DaysInMonth as (

    select @date as Date

    union all

    select dateadd(dd,1,Date)

    from DaysInMonth

    where month(date) = month(@Date))

    select * from DaysInMonth where month(date) = month(@Date)

    Adi

    --------------------------------------------------------------
    To know how to ask questions and increase the chances of getting asnwers:
    http://www.sqlservercentral.com/articles/Best+Practices/61537/

    For better answers on performance questions, click on the following...
    http://www.sqlservercentral.com/articles/SQLServerCentral/66909/