【发布时间】:2017-06-15 07:56:52
【问题描述】:
在 SQL Server 中,我有 VARCHAR 值。
我需要一个自动重新格式化数据的视图。
以下列形式存储的数据:
hawthorn104freddy@hawthorn.com
scotland2samantha@gmail.com3
birmingham76roger@outlook.co.uk1905student
需要重新格式化成如下:
hawthorn 104freddy@hawthorn.com0000
scotland 002samantha@gmail.com 0003
birmingham076roger@outlook.co.uk1905student
重新格式化
- 字符串中的数值用零填充到最长数字的长度
- 所有其他字符都用空格字符填充以排列数字。
有人知道这是怎么做到的吗?
注意:请记住,字符串可以包含单词和数字的任意组合。
【问题讨论】:
-
祝你好运,用正则表达式和字符串函数在纯 SQL 中实现这一点。在存储过程中实现算法可能是您在数据库端执行此操作的唯一方法,但我宁愿使用真正的编程语言对其进行编码。
-
也许不是最好的报价,但我建议您检查一下您在数据库中存储数据的内容和方式。
标签: sql-server varchar reformatting