在SQLite中拆分字母和数字

时间:2013-04-05 07:08:56

标签: sql sqlite

我有一个包含字母和数字的列(混合/随机)

914103B01292AB21HRVH92665

我需要像这样分开它

914103012922192665 -numbers only
BABHRVH            -letters only

提前感谢!

1 个答案:

答案 0 :(得分:0)

在SQLite中执行此操作的最简单方法是使用一系列REPLACE函数 - 如下所示:

select replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(the_string, '0', ''),
                                                                               '1', ''),
                                                                       '2', ''),
                                                                '3', ''),
                                                       '4', ''),
                                               '5', ''),
                                       '6', ''),
                                '7', ''),
                         '8', ''),
                 '9', '') as letters_only,
  ...

- 使用类似系列的26个replace函数调用来删除字母,只保留数字。

或者,您可以编写用户定义的函数来为您执行此操作;这是SQLite中的一项非常重要的练习 - 请参阅this question