我是一個新手希望你們可以幫助我。我現在正在查詢一個查詢,似乎我被這個錯誤優化器鎖提示選項卡住了。我以前沒有遇到過這個錯誤。優化器鎖提示選項錯誤
我遵循本教程從一個網站約SQL Pivot。除了當我使用EXEC sp_executesql運行它時,一切都很完美。我盡我所能來解決這個問題,但沒有運氣。它是我第一次在SQL服務器中使用Pivot。
請檢查下面我的代碼:
我正在實現的是,我試圖將大約50行到列我的存儲過程。
DECLARE @CustFeedCols AS NVARCHAR(4000)
DECLARE @CustFeedQuery AS NVARCHAR(4000)
SELECT @CustFeedCols = COALESCE(@CustFeedCols + ',','') + QUOTENAME(custfeed)
FROM (SELECT DISTINCT TOP 1000 replace(replace(replace(replace(custfeed ,' ',''),'.',''),'-',''),'–','') as custfeed FROM efp_touchCRM.dbo.efp_customertouch
WHERE custfeed <> '' AND custfeed is NOT null AND custfeed <> 'Sold Sample'
ORDER BY custfeed) AS custfeed
SELECT @CustFeedCols
SET @CustFeedQuery = N'SELECT ' + @CustFeedCols + ' FROM efp_touchCRM.dbo.efp_customertouch PIVOT(GROUPING(custfeed)) FOR custfeed IN (' + @CustFeedCols + ')) AS P'
SELECT @CustFeedQuery
EXEC sp_executesql @CustFeedQuery --This is where the error appears.
--Incorrect syntax near '('.
感謝各位的回覆!查看第二行提供的錯誤的編輯代碼。謝謝。
感謝。
您是否收到錯誤信息?什麼不在這裏? @CustFeedQuery的內容是什麼樣的? –
嗨Sean Lange!是的,我得到了一個錯誤,看到代碼中的EXEC下面的錯誤,第二行。謝謝, –
@CustFeedQuery的內容是什麼樣的?您應該選擇或打印您的變量而不是執行它,以便您可以看到要執行的代碼。那是錯誤的地方。 –