我在Oracle Table中有几列。
EMP_SEQ_NO Number(5)
Some_COL Varchar(20)
EMP_SEQ_NO Some_COL
10 ABCD
11 11
12 Test
13 Tommy
14 14
15 15
16 Ronny
我正在尝试做类似
的事情Select * from EMP where EMP_SEQ_NO=Some_COL
抛出无效数字错误。
请帮忙
答案 0 :(得分:4)
使用to_char解决您的问题。
Select * from EMP where to_char(EMP_SEQ_NO)= to_char(Some_COL)
答案 1 :(得分:0)
它们都是不同类型的。所以,你应该将其中一个投射到另一个的类型:
Select * from EMP
where CAST(EMP_SEQ_NO as varchar(20)) = Some_COL
或强>
Select * from EMP
where EMP_SEQ_NO = CAST(Some_COL as number(5))
答案 2 :(得分:0)
to_number将解决此问题
Select * from EMP where EMP_SEQ_NO= to_number(Some_COL, '99999');