结合2字段的类型不匹配错误

时间:2014-12-04 15:17:26

标签: sql oracle type-mismatch

我有一个案例陈述,我根据FieldA的值从2个字段FieldB,FieldC中的1个中提取数据。 3个字段位于由唯一ID链接的3个不同表中。所以我的case语句根据Table1中FieldA的值从正确的表中提取

Example Data.
Table1.FieldA       Table2.FieldB         Table3.FieldC
Manager             John                  
AccountNumber                             55
BusTier1            Engineering  
BusTier2            QA
BCAccount                                 297
ProgramID                                 11-34.1/2

我想要

FieldA              Newfield
Manager             John                  
AccountNumber       55
BusTier1            Engineering  
BusTier2            QA
BCAccount           297
ProgramID           11-34.1/2

我尝试将FieldB和FieldC都投射到Varchar,Nvarchar,Varchar2和Nvarchar2中。我收到两个错误类型不匹配或无效数字之一。它都以ProgramID字段为中心。如果我把这个记录留下来,我可以把所有东西都拉成一列。

1 个答案:

答案 0 :(得分:1)

CASE语句必须为所有情况返回相同的数据类型。所以只需使用TO_CHAR(FieldC)将数字转换为VARCHAR ...