Hi I have the following strings in a SQL table Cities
:
Info AUS / Melbourne (AUS) 16th Jul AUS / Sydney (AUS) 16th Jul USA/ New York (USA) 16th Jul
I am hoping to extract and create a new column so my desired result is:
Info City AUS / Melbourne (AUS) 16th Jul Melbourne (AUS) AUS / Sydney (AUS) 16th Jul Sydney (AUS) USA / New York (USA) 16th Jul New York (AUS)
I have tried something like:
Select [Info], SUBSTRING([Info],CHARINDEX('/ ',[Info])+2,10) as City from Cities
But thats a fixed width of 10 characters, rather I would like the string from the /
to the closed brackets )
Any help would be much appreciated!
Thanks very much
Advertisement
Answer
Rather than use a fixed length why not just use charindex
like you have done but for both delimiters?
select Substring([info], CharIndex('/',[info])+2, IsNull(NullIf(CharIndex(')',[info]),0)-CharIndex('/',[info])-1,Len([info])))