我有一个案例陈述,我根据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字段为中心。如果我把这个记录留下来,我可以把所有东西都拉成一列。
答案 0 :(得分:1)
CASE语句必须为所有情况返回相同的数据类型。所以只需使用TO_CHAR(FieldC)将数字转换为VARCHAR ...