我建立包含UNION ALL的查询,但它的两个部分 有不相同的数据类型。我的意思是,我要显示一列,但 两列,从那里我得到的数据格式有区别。 所以,如果我得到的示例:

select a,b
from c
union all
select d,b
from e

a和d是数字,但它们具有不同的格式。这意味着,一个的长度为15 和b的长度为13个有浮点后没有数字。 使用数字,VARCHAR,整数和小数没有工作。 我总是得到消息:数据转换或数据映射误差即可。 我如何转换这些字段相同的格式?

有帮助吗?

解决方案 2

我已经使用了铸函数的列输入到相同的类型(VARCHAR具有大长度)转换。所以我用联盟没有问题。当我需要它们的原始类型,然后再返回,我使用的相同转换函数(此时刻i转换的值成浮点),并且我得到的结果我想要的。

其他提示

我不DB2经验,但你不能只投“一”和“d”为相同类型。是大到足以处理这两种格式,很明显。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top