我試圖設計一個函數來替換許多存儲過程中常用邏輯的大案例語句。分組中的內聯UDF通過SQL
基於我的研究,我將它設置爲內聯表值函數。
我的問題是:我將要替換的很多存儲過程都使用分組依據,但我似乎無法將內聯函數分組,如同我可以標量一樣。你如何通過內聯函數進行分組?我想,我試圖做到這一點:
SELECT account
, (SELECT Inline FROM fnGroups (id)) AS Buckets
, SUM(Sales) AS Sales
FROM FactTable
GROUP BY
Account
, (SELECT Inline FROM fnGroups (id)) --Not Allowed
有需要此更新許多存儲過程,我努力使這一功能動態地,並避免少量的重新寫入每個存儲過程。我已經嘗試了一個標量版本,但是性能已經受到了很大的影響。
謝謝!
這很好,謝謝。我還沒有使用APPLY函數。這似乎是進行這些更改的最乾淨的方式。偉大的文章也是如此。 – 2014-12-04 20:05:09