Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 比较两个标量函数的结果_Sql Server_User Defined Functions - Fatal编程技术网

Sql server 比较两个标量函数的结果

Sql server 比较两个标量函数的结果,sql-server,user-defined-functions,Sql Server,User Defined Functions,我对标量函数之类的东西还不熟悉,所以请解释一下我是否犯了什么可怕的错误(很有可能)。我试图比较两个不同标量函数的结果,这两个函数都返回一个INT,但无论语法如何,我都会得到错误 SELECT dbo.function1(@param1)=SELECT dbo.function2(@param2,@param3,@param4) 理想情况下,如果可能的话,这将作为较大查询中的WHERE子句的一部分运行,因为@param1取自较大查询的较早部分。您不需要第二个“select”。如果要比较查询中的数字

我对标量函数之类的东西还不熟悉,所以请解释一下我是否犯了什么可怕的错误(很有可能)。我试图比较两个不同标量函数的结果,这两个函数都返回一个
INT
,但无论语法如何,我都会得到错误

SELECT dbo.function1(@param1)=SELECT dbo.function2(@param2,@param3,@param4)


理想情况下,如果可能的话,这将作为较大查询中的
WHERE
子句的一部分运行,因为
@param1
取自较大查询的较早部分。

您不需要第二个“select”。如果要比较查询中的数字/整数,可以使用case语句。

不需要第二个“选择”。如果要比较查询中的数字/整数,可以使用case语句。

能否解释为什么不需要选择?我刚试过,但还是失败了。另外,我不完全确定如何使用case语句来比较它们,因为已经有了一个“select”。每个查询只需要一个“Select”。关于case语句;当dbo.function1(@param1)=dbo.function2(@param2,@param3,@param4)时,则。。。其他的结束。请参阅此处的详细信息确定,但
SELECT dbo.function1(@param1)=dbo.function2(@param2,@param3,@param4)
仍会导致“=”处的语法错误。案例陈述似乎有些过分。这与
基本相同,其中1=1
。正确,因为您不能选择两个相等的对象。这就是为什么您需要将其放在“案例陈述”中的原因。比较后,您可以输出所需的结果。您能解释一下为什么不需要选择吗?我刚试过,但还是失败了。另外,我不完全确定如何使用case语句来比较它们,因为已经有了一个“select”。每个查询只需要一个“Select”。关于case语句;当dbo.function1(@param1)=dbo.function2(@param2,@param3,@param4)时,则。。。其他的结束。请参阅此处的详细信息确定,但
SELECT dbo.function1(@param1)=dbo.function2(@param2,@param3,@param4)
仍会导致“=”处的语法错误。案例陈述似乎有些过分。这与
基本相同,其中1=1
。正确,因为您不能选择两个相等的对象。这就是为什么您需要将其放在“案例陈述”中的原因。一旦你比较它,你就可以输出你想要的结果。这完全取决于你的函数逻辑。我认为没有必要进行比较。函数取决于您的代码构造。这不取决于任何人,只取决于你的函数逻辑。我认为没有必要进行比较。函数取决于您的代码构造。不依赖任何人。