在生成所选输出之前,编写调用用户定义函数作为查询一部分的SQL查询的最佳方法是什么。即我想做下面的事情,请用户定义的函数对表数据进行一些计算。
select field1, field2 from table1 where function(table1.field3, table1.field4) > 10
答案 0 :(得分:1)
你的(标量)功能:
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
中的dbo.my_function
。它是用户定义的标量函数所必需的。
答案 1 :(得分:0)
存储过程可能会很好地运行或只是为了写一个数学/字符串条件。取决于你的病情有多复杂。