ALTER PROCEDURE [dbo].[usp_GetPostcodeAnalysis]
-- Add the parameters for the stored procedure here
@startDate DATETIME,
@endDate DATETIME,
@customerID INTEGER = NULL,
@siteID INTEGER = -1
AS
DECLARE @itemTypeID INT
SELECT @itemTypeID=ItemTypeID FROM dbo.ItemTypes WHERE ItemTypeName = 'Advert'
DECLARE @SQL NVARCHAR(4000)
BEGIN
SET @SQL = 'SELECT at.ActionTypeName,
COUNT(*) AS "Count"
FROM CustomerSites cs JOIN Items i
ON cs.SiteID = i.SiteID
JOIN Actions a
ON a.ItemID = i.ItemID
JOIN ActionTypes at
ON a.ActionTypeID = at.ActionTypeID
WHERE a.DateAndTime BETWEEN @1 AND @2
AND i.ItemTypeID = @iti
AND at.ActionTypeName IN (''List view'', ''Full view'', ''Email enquiry'', ''Print view'', ''Directions'')'
IF @customerID IS NOT NULL
SET @SQL = @SQL + ' AND i.CustomerID = @c'
IF @siteID > -1
SET @SQL = @SQL + ' AND i.SiteID = @s'
SET @SQL = @SQL + ' GROUP BY
at.ActionTypeName
ORDER BY
at.ActionTypeName'
EXECUTE sp_executesql @SQL,
N'@1 DATETIME, @2 DATETIME, @iti INT, @c INT, @s INT',
@startDate, @endDate, @itemTypeID, @customerID, @siteID
你能發表一些代碼嗎?很難說沒有看到任何東西......除非你在數據集中勾選了無限的執行時間屬性? – Paddy 2009-10-09 08:34:47
我發佈到一個單獨的線程 – Robert 2009-10-09 09:53:24