Sql “其中[value]不为null”的Case语句
我见过很多这样的问题,有人在测试case语句中的空值,但与这个问题的性质无关。我希望case语句的返回是where子句的“is not null”表达式 这就是我所拥有的:Sql “其中[value]不为null”的Case语句,sql,null,case,where,Sql,Null,Case,Where,我见过很多这样的问题,有人在测试case语句中的空值,但与这个问题的性质无关。我希望case语句的返回是where子句的“is not null”表达式 这就是我所拥有的: INSERT INTO table1 (Id) ( SELECT DISTINCT AId AS Id FROM table2 As t2 INNER JOIN table3 ON ( ... ) WHERE CASE WHEN tes
INSERT INTO table1 (Id) (
SELECT DISTINCT AId AS Id
FROM table2 As t2
INNER JOIN table3
ON (
...
)
WHERE CASE
WHEN test_value <> '' THEN (another_value IS NOT NULL)
END
)
你可以这样做:
WHERE CASE
WHEN test_value <> '' AND another_value IS NOT NULL THEN another_value
END
试试这个:
WHERE ((isnull(test_value,'') <> '' and ISNULL(another_value,'') <> '') OR ISNULL(test_value,'') = '')
返回错误:在预期条件的上下文中指定的非布尔类型表达式底部示例在test_value!=,但是,当test_value=.@matrumz进行更新时,fails会过滤掉所有内容。所以基本上,如果该行的test_值有一个值,那么该行的另一个_值也必须有一个值。如果该行的test_值没有值,那么另一个_值有什么值无关紧要?我将运行这个。有关案例和结果,请参见更新的问题。
WHERE ((isnull(test_value,'') <> '' and ISNULL(another_value,'') <> '') OR ISNULL(test_value,'') = '')