0
在生成所選輸出之前,編寫一個將查詢的一部分調用爲用戶定義函數的sql查詢的最佳方式是什麼?即我想要做下面的事情,請在用戶定義的函數中對錶格數據進行一些計算。使用函數選擇數據的SQL查詢
select field1, field2 from table1 where function(table1.field3, table1.field4) > 10
在生成所選輸出之前,編寫一個將查詢的一部分調用爲用戶定義函數的sql查詢的最佳方式是什麼?即我想要做下面的事情,請在用戶定義的函數中對錶格數據進行一些計算。使用函數選擇數據的SQL查詢
select field1, field2 from table1 where function(table1.field3, table1.field4) > 10
存儲過程可能會發揮良好或只是寫一個數學/字符串條件。取決於你的情況有多複雜。
你的(標量)功能:
CREATE FUNCTION my_function (@a AS int, @b AS int)
RETURNS int
BEGIN
RETURN @a * @b
END
您的疑問:
SELECT field1, field2
FROM table1
WHERE dbo.my_function(table1.field3, table1.field4) > 10
不要忘記在dbo.my_function
的dbo
。用戶定義的標量函數是必需的。
存儲過程不允許在那裏。 –