/*There is a column with data like 'plase20080412OK', 'jdjldk19351123',
please write a query to get the Date value.*/
Create table #GetDateStr (String1 varchar(50))
insert into #GetDateStr values ('please20080412ok'), ('Jane19880416Hi'), ('euout19950612dk');
/*The subquery is used to trim the left characters before date,
second query trims characters after date*/
select substring(String2, 1, PATINDEX('%[A-Z,a-z]%',String2)-1) from
(
select substring(String1, PATINDEX('%[0-9]%',String1),len(String1)) as String2
from #GetDateStr
) tbl
-- or --
select substring(String1,
CASE When Charindex('20',String1) != 0 Then Charindex('20',String1)
When Charindex('19',String1) != 0 Then Charindex('19',String1)
end,8)
from #GetDateStr
阅读(649) | 评论(0) | 转发(0) |