also
WHERE (YEAR(dbo.Rental.RentalStartDate) = YEAR({ fn NOW() })) AND (MONTH(dbo.Rental.RentalStartDate) = MONTH({ fn NOW() }))
can be better written as
WHERE dbo.Rental.RentalStartDate >=DATEADD(mm,DATEDIFF(mm,0,GETDATE()),0)
AND dbo.Rental.RentalStartDate < DATEADD(mm,DATEDIFF(mm,0,GETDATE())+1,0)
to make use of an available index on RentalStartDate column
------------------------------------------------------------------------------------------------------
SQL Server MVP
http://visakhm.blogspot.com/