【发布时间】:2017-03-03 22:15:53
【问题描述】:
需要从Routing number 和Account_Number 列中提取数值
Routing_number 列中的值:
031100225 TOTAL FRAUD,
101190178 NON CASH,
071000288 NOT ON US,
101104407 10 DAY SENT,
065000090 REQ 10 DAY 81615,
101101141, DATED 032409,
101100045, FOR A FORD TAURUS
我需要选择路由号码为 - 031100225,101190178,071000288
Account_number 列中的值:
2079950059473 TOTAL FRAUD,
000480152617 KC MASTER COMP,
2538867, STALE DATE, CHECK
7003475514 FROZEN BLOCKED,
5049530455, NSF CHECK
我需要选择账号为2079950059473,000480152617
我需要一个SUBSTRING 函数来仅选择列中的数字部分。
谢谢
【问题讨论】:
-
路由号码总是9位数吗?帐号总是一定位数吗?
-
使用 CHARINDEX 查找第一个空格,嵌入到 Left 函数中。
-
路由号码为九位数,帐号无限制。
-
有些值甚至有“,”和“-”符号来表示。所以我需要选择空格前的数字或任何奇怪的符号,如“,”“空格”“。”等
-
SQL take just the numeric values from a varchar 的可能重复项。至于生成逗号分隔列表,请使用 For XML path 在 SQL Server 中组合行。您没有提供足够的信息来了解要组合哪些行(它们如何组合),所以我们所能做的就是提供一个示例。示例here though.
标签: sql-server tsql sql-server-2012 substring