gpt4 book ai didi

sql - 在 PL/SQL 中检查空值的正确方法是什么?

转载 作者:行者123 更新时间:2023-12-04 18:30:08 24 4
gpt4 key购买 nike

IF purpose = null THEN
v_purpose := '';
ELSE
v_purpose := ' for ' || purpose;
END IF;

当目的为空时,它仍然会转到其他...为什么?!

最佳答案

正确的测试是

IF purpose IS NULL THEN

这是因为 NULL不是存储在字段中的值。它是关于存储在别处(但在行内)的字段的属性。

将字段设置为 NULL似乎是一个普通的任务,因此通过直接比较来期望对其进行测试似乎是完全正交的。然而,为了让它正常工作,我推测 SQL 赋值原语有一个神奇的隐藏方面,它转移了特殊符号 NULL 的赋值。设置属性而不是字段。

关于sql - 在 PL/SQL 中检查空值的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10234087/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com