使用REGEX

时间:2016-11-17 10:08:00

标签: mysql sql teradata

我是sql的新手!我有一个关于重新格式化字符串的问题:

目前我有一个列给我以下结果,例如:

1a20b345c
1a20b
20b345c

(字符数不总是相等)。每个数字和字母都是一个组合(1a, 20b, 345c)。我希望它把字母放在数字之前(而不是从数字开始),但在组合方面保持相同的顺序。如:

a1b20c345
a1b20
b20c345

这有意义吗?我似乎无法弄清楚如何将字母与数字分开然后重新排序。

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

Teradata的

select regexp_replace ('1a20b345c','(\d+)(\D+)','\2\1')