I have a Query like below
WITH TempResult AS(
SELECT AccessionNumber FROM [CASE]
UNION ALL
SELECT AccessionNumber FROM CaseReassign),
TempCount AS (SELECT COUNT(AccessionNumber) AS MaxRows FROM TempResult)
SELECT * FROM TempResult, TempCount
Which works fine fetching the rows and its count. But, when Can someone help me in how to add a filter dynamically to this select query? say for example I need something like below but it throws an error "Common Table Expression defined but not used"
DECLARE @filter nvarchar(max);
SET @filter = 'WHERE AccessionNumber LIKE ''%Case%'''
DECLARE @sql nvarchar(max);
WITH TempResult AS(
SELECT AccessionNumber FROM [CASE]
UNION ALL
SELECT AccessionNumber FROM CaseReassign),
TempCount AS (SELECT COUNT(AccessionNumber) AS MaxRows FROM TempResult)
SELECT @sql = 'SELECT * FROM TempResult, TempCount ' + @filter
EXEC sp_executesql @sql