SQL 判断参数是否有值

标签 sql sql-server parameters if-statement

我将如何使用 IF语句来确定是否有多个参数有值,然后做一些工作,如果只有一个参数有值,则做其他工作。如果使用 SQL,这可能吗?我只是想确定一个参数是否具有值或多个参数是否具有值,因为如果是这样,那么我需要做一些完全不同的事情。我试过做一个 SQL 语句,但它没有正常工作。有人能指出我正确的方向吗?

最佳答案

在 SQL 中检查参数是否有值时,应该将值与 NULL 进行比较。
这是一个稍微过度设计的示例:

Declare @Param1 int  
Declare @param2 int = 3

IF (@Param1 is null AND @param2 is null)
BEGIN
    PRINT 'Both params are null'
END
ELSE
BEGIN
    IF (@Param1 is null)
        PRINT 'param1 is null'
    ELSE 
    IF (@Param2 is null)
        PRINT 'param2 is null'
    ELSE
        PRINT 'Both params are set'
END

关于SQL 判断参数是否有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5262159/

相关文章:

javascript - Javascript 中是否可以为匿名调用函数提供参数计数?

arrays - 函数中的闭包数组参数

mysql - 如何在面向对象的 Coldfusion 设置中设置动态数量的表单字段?

SQL Server - 在联接中正确分组

sql - JOIN 打破 WHERE 子查询

sql - 如何将 XML 值分解到 MSSQL 中的列中?

sql-server - SQL Server 中的 "with (nolock)"是什么?

mysql - SQL 行返回顺序

PHP SQL 函数

sql - 在另一个计算 SELECT 列中使用计算 SELECT 列