我有一个包含2列的表
COLNUM | COLSTR
---------------
1 | 001223
2 | 002234
3 | ds2-dd
4 | 003344
我想像这样查询
SELECT * FROM TABLE WHERE CAST(COLSTR AS NUMBER) IN (1223,3344)
但是由于第4行无法转换为数字,因此查询失败。我可以创建一个可以消除非数字可转换行的视图,但我想用一个查询来实现。我该怎么做?
Oracle 11g。
感谢。
答案 0 :(得分:1)
我建议使用正则表达式
SELECT * FROM TABLE WHERE REGEXP_LIKE(COLSTR,'^[0-9]$')