我正在嘗試創建一個函數,該函數的參數expression與BINARY_CHECKSUM一樣使用。具體來說,我希望我的參數是1到N列名稱的列表。當我在SQL Server Management Studio的對象資源管理器中查看BINARY_CHECKSUM(或MAX或CHECKSUM)的定義時,參數被定義爲'Expression(any type)' - 用戶定義的函數是否可以模擬這個?我知道我可以使用參數分隔列表的逗號名稱,但我很好奇'表達式(任何類型)'。用於用戶定義函數的'Expression'參數數據類型
2
A
回答
0
你可以試試這樣說:
declare @cmd varchar(max)
declare @columns varchar(max), @table_name sysname
set @table_name = 'sys.objects'
set @columns = '*'
set @cmd = 'select top 1 binary_checksum('[email protected]+') as column_name from '[email protected]_name
print @cmd
exec (@cmd)
+0
謝謝,但我真的很想了解內部。也許這個鏈接將更具說明性:http://t.co/cK9DIU1z – bryantb
0
如果你想在SQL Server 2005或更高編寫自己的聚合函數(如BINARY_CHECKSUM
,COUNT
,等等),你必須使用CLR 。請參閱MSDN上的以下:
How to: Create and Run a CLR SQL Server Aggregate
CREATE AGGREGATE
相關問題
- 1. 用戶定義的數據類型,使用另一個用戶定義的數據類型作爲參數
- 2. 引用到函數類型函數類型:未定義參考
- 3. 未定義函數'lt'用於'cell'類型的輸入參數
- 4. 未定義函數'fitrsvm'用於輸入'double'類型的參數
- 5. 用戶定義的表類型參數
- 6. Python用戶定義的數據類型
- 7. Cassandra - 用戶自定義數據類型
- 8. 用戶定義UML數據類型2010
- 9. 應用以函數爲參數的用戶自定義函數
- 10. 用戶自定義數據類型VS用戶自定義類型VS用戶定義的表類型
- 11. 用於廣義多參數函數提升的類型技巧
- 12. 基於用戶定義參數的IIf函數
- 13. 是否可以根據函數參數的類型定義的映射來定義函數返回類型?
- 14. Matlab - 用戶定義的函數作爲函數的參數
- 15. 強類型數據集作爲用戶定義的表型參數
- 16. 參數的構造函數用於自定義Web代理類
- 17. 未定義的函數或方法用於輸入'uint8'類型的參數。
- 18. 未定義的函數'readlas'用於'char'類型的輸入參數
- 19. 具有十進制類型參數的Excel VBA用戶定義函數
- 20. 用戶定義類型作爲PostgreSQL函數中的輸入參數
- 21. 用戶定義函數用於加入
- 22. 未定義函數'NR'用於類型爲'function_handle'的輸入參數。 MATLAB
- 23. 用任何參數和已知返回類型定義函數
- 24. 我可以在函數定義中使用函數參數的子類型嗎?
- 25. 基於用戶定義的函數連接兩個數據幀
- 26. 使用其他數據類型定義的數據類型
- 27. 內置數據類型與C++中用戶定義的數據類型
- 28. 內置數據類型轉換到用戶定義的數據類型C++
- 29. 調用用戶定義的類型的參數(甲骨文ODP.NET)
- 30. 用參數調用用戶定義的函數
接受可變數量的參數,一個UDF?我相信這目前不可能。 – AakashM
我同意 - 我確定UDF不能接受可變數量的參數。但是,我對'Expression(any type)'參數的實現很感興趣。看看CHECKSUM函數的文檔,看看我指的是什麼。 – bryantb