1
我有两个表,我有'union all'之间。sql union所有数据类型错误与空值
我的问题,我得到的数据不匹配的错误原因,表我有select ... ,'opt' as opt from...
然后在第二个表我有select ..., null as opt from...
我知道我可以有一个空字符串,但'' as opt
,我不想要一个空字符串,我真的需要它为空。无论如何,我可以让查询接受null?
我有两个表,我有'union all'之间。sql union所有数据类型错误与空值
我的问题,我得到的数据不匹配的错误原因,表我有select ... ,'opt' as opt from...
然后在第二个表我有select ..., null as opt from...
我知道我可以有一个空字符串,但'' as opt
,我不想要一个空字符串,我真的需要它为空。无论如何,我可以让查询接受null?
解析器内部分配一个数据类型为NULL,它是一个INTEGER。您的列不是数字,因此导致类型不匹配。
为了解决这个根本CAST(NULL AS VARCHAR(..))
另外,我认为这将是一个好主意,明确地投你的字符常量'选择”您要创建的第一个表达式(可能是CHAR(3)在这种情况下)和分配空值时使用相同的数据类型。如果你需要修改代码,这会让你对你更明显。 – BellevueBob