我有幾個查詢要在客戶表上運行。這些查詢中的每一個都可以識別客戶表中的可能數據質量問題。例如,一個查詢是查找客戶的年齡是否爲< 18,這不能/不應該是這種情況。整個SQL查詢作爲存儲過程中的變量
我有一個遊標,將這些查詢中的每一個逐個提取到一個變量中。
我很努力地運行這些查詢,並彙總結果。
DECLARE c1 CURSOR FOR SELECT [ruleQuery] FROM [dbo].[SQL_DataQuality_Rules]
OPEN rules_cursor
FETCH NEXT FROM rules_cursor INTO @rulequery
WHILE @@FETCH_STATUS = 0
BEGIN
--Help needed here to execute @rulequery which would be something like
--SELECT sum(case when age < 18 then 1 else 0 end) as 'Fail' FROM...
FETCH NEXT FROM rules_cursor INTO @rulequery
END
CLOSE c1
DEALLOCATE c1
因爲我會從Excel中調用此過程,所以我想在Excel中的一個表中有所有失敗計數。
這是你在找什麼? http://www.sqlusa.com/bestpractices/dynamicsql/ –
對桌子施加限制是不是更好,因此這些條件不能放入表格中? – HLGEM