我面临一个奇怪的问题。我在oracle DB中有一个表(observation_measurement),它有很多字段。一个字段名称是observation_name。此observation_name字段使用文本文件中的值存储不同的度量值。 例如,observation_name存储四个测量值a,b,c,d(测量值的名称)及其对应值1,2,3,4(这些测量值)。
后来它正在读取相同的文本文件。这次文本文件有三个测量a,b,d(c不存在),它们的值是7,8,9,然后存储在表中。所以,如果我需要所有observation_names的最新值,那么我应该得到a = 7,b = 8,c = null,d = 9。但是它给了我 一个= 7,B = 8,的 C = 3 下,d = 9。我不知道为什么它会得到用于c测量的旧数据。
有什么想法吗?
答案 0 :(得分:0)
NULL
必须在Oracle中专门处理,例如IS NULL
或IS NOT NULL
。
希望,您的更新逻辑涉及对列的一些验证,并且未处理NULL
值。
由于NULL
导致某些验证失败,因此旧值将保留在表中。
您能否使用UPDATE
表中的查询来更新您的问题。