我是一个新手希望你们可以帮助我。我现在正在查询一个查询,似乎我被这个错误优化器锁提示选项卡住了。我以前没有遇到过这个错误。优化器锁提示选项错误
我遵循本教程从一个网站约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的内容是什么样的?您应该选择或打印您的变量而不是执行它,以便您可以看到要执行的代码。那是错误的地方。 –