【发布时间】:2023-01-05 05:50:43
【问题描述】:
我对如何比较获取值为 null 并在 if 条件下比较 sql 有疑问
这是我的数据 null 值 bcz 我在 custId 中没有数据,当我使用此查询时它是正确的 Select custId from myTable where Id=123 但如何将 null 与值进行比较?行中的一些时间值也显示两个条件都适用,这意味着一些可用的 custId 数据也在这种情况下更新 ..query 中的 custId,当它为真时
IF (Select custId from myTable where Id=@Id) != @custId
BEGIN
...query
END
【问题讨论】:
-
“将空值与某个值进行比较”应该是什么意思?请澄清你的问题。值为空或不为空。您不能将 null 与其他任何东西“比较”。
-
样本数据和期望的结果会有所帮助。
-
您是否在寻找
[NOT] DISTINCT FROM? -
@JonasMetzler 只是兄弟,前任。我的表中有 3 个条目,数据 ID 是
1、2、3,custId 就像123 ,291 ,null现在在我的条件下Select custId from myTable where Id=3所以我的数据是空的,所以我如何使用条件和它从某种意义上说,参数侧 custId 不为空,它的 int 值将变为 true,如果两者不同,则我想与差异进行比较,然后条件为真..那我该怎么办? -
你能使用这样的东西吗: IF (Select ISNULL(custId,-1) from myTable where Id=@Id) != ISNULL(@custId,-1) BEGIN ...query END
标签: sql