我使用以下查询来内部联接两个表。我连接的列都是varchar类型。
但是,当我使用以下查询时,它会导致错误:非NULL列中的NULL结果
"RAW"DB_FOO"表";是标准表格。其中EXTERNALID是VARCHAR(16777216(类型
EXTERNALID未被声明为";VARCHAR NOT NULL";在";RAW"DB_FOO"表";释义它是可以为null的。
"RAW"DB_BAR"视图";是视图其中OPP_ID是VARCHAR(16777216(类型
SELECT
a.EXTERNALID
,c.OPP_ID
FROM
"RAW"."DB_FOO"."table" AS a
JOIN
"RAW"."DB_BAR"."view" AS c
ON
a.EXTERNALID = c.OPP_ID
当我尝试将类型显式转换为varchar时,查询执行/工作
SELECT
a.column
,c.column
FROM
"RAW"."DB_FOO"."table" AS a
JOIN
"RAW"."DB_BAR"."view" AS c
ON
a.EXTERNALID::varchar = c.OPP_ID::varchar
我不知道为什么会发生这种事。非常感谢您的帮助。
EXTERNALID被声明为";VARCHAR NOT NULL";在";RAW"DB_FOO"表";释义