Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
此行应该只检查 test_data 表中的 c1 字符串,如果没有数字,则整个 c1 字符串显示在 result1 列中。我尝试自行测试这部分,但它似乎不起作用。
任何人都可以帮忙吗?表和列都已创建,只是没有提供我需要的结果。结果似乎是随机的:一些带数字的字符串被插入,而一些则没有。
SELECT case WHEN REGEXP_Instr(c1, '[:digit:]')=0 THEN c1 end result1 FROM test_data;
使用[[:digit:]]而不是[:digit:] POSIX 字符类只能在括号内使用。
[[:digit:]]
[:digit:]
SELECT case WHEN REGEXP_Instr(c1, '[[:digit:]]')=0 THEN c1 end result1 ,c1 FROM ( select 'asdf' c1 from dual union all select '1234' c1 from dual union all select 'as1234df' c1 from dual ) test_data;