我的产品表中有一个名为prod_code的列。我需要从产品表中选择有效的prod_code,然后将其加载到另一个表中。有效的prod_code是其中没有任何特殊字符的代码。
有效prod_code: wer1234,asd1345
无效的prod_code: abc $ 123,lps ????,$$$(我需要检查和过滤出来)。
我该如何实现?
prod代码列表
WER1234
ASD1345
ABC$123
LPS????
$$$
产品代码的目标列表
WER1234
ASD1345
这很丑陋,但可以完成工作。它使用类似谓词拒绝不可接受的字符串。您可能还可以使用类似的谓词来指定可接受的字符串,但我猜这是更快的。
select prod_code from products
where prod_code not like '%['+x'00'+'-'+x'2f'+','+
x'3a'+'-'+x'40'+','+
x'5d'+'-'+x'7f'+']%' escape ''
and prod_code not like '%%'
and prod_code not like '%[%'