如何使用子字符串从这些数字中输入日期

How to use substring to put the date from these numbers

如何提取这些数字的日期(20060807)

1.2.840.113782.1.3.5.8696.41870.20060807.69548508               
1.2.840.113782.1.3.1.JDI.65.1.2002816.205431857 
1.2.840.113782.1.3.1.JDI.06.8.2002816.19213160
1.2.840.113782.1.3.5.2360.28594.20030826.80612275 
1.2.840.113782.1.3.1.JDI.35.26.2002816.207943                

让我假设日期格式是一致的。如果是这样,你可以这样做:

select substring(col, len(col) - charindex('.', reverse(col)) - 7, 8)

由于日期格式不一致,您最终可能会多一个“.”。在末尾。所以,使用 replace():

摆脱它
select replace(substring(col, len(col) - charindex('.', reverse(col)) - 7, 8), '.', '')

Here 是 SQL Fiddle.