SQL Server:查询以获取格式化字符串

时间:2018-02-23 03:10:33

标签: sql sql-server

有人可以帮我在SQL Server查询中提取字符串吗?

declare @txt = ' TOWER LAKES 60010 *Friday, 10/17/1952 CLOUTIER FABRICANTE .'

我想从该字符串中获取6001010/17/1952

我试过

select @txt 
where @txt like '[0-9]/[0-9]/[0-9]

提取该字符串的其他任何方式?

1 个答案:

答案 0 :(得分:0)

关于您想从字符串值中提取的确切格式,这个问题尚不清楚。

但是,正如您的查询建议也可以通过patindex()使用substring()函数来获取固定数字数值和日期值

SELECT 
       substring(@txt, patindex('%[0-9][0-9][0-9][0-9][0-9]%', @txt), 5), Numeric_Values 
       substring(@txt, patindex('%[0-9][0-9]/[0-9][0-9]/[0-9][0-9][0-9][0-9]%', @txt), 10) Date_values