J'ai une chaîne 'some.file.name', je veux saisir 'some.file'.SQL Server 2005: charindex à partir de la fin
Pour ce faire, j'ai besoin de trouver la dernière occurrence de '.' dans une chaîne.
Ma solution est:
declare @someStr varchar(20)
declare @reversedStr varchar(20)
declare @index int
set @someStr = '001.002.003'
set @reversedStr = reverse(@someStr)
set @index = len(@someStr) - charindex('.',@reversedStr)
select left(@someStr,@index)
Eh bien, est-ce pas trop compliqué, je ne faisais que onformément à l'aide de 'some.file' dans une clause where?.
Quelqu'un a une bonne idée?
@Shuo: mettre à jour ma réponse pour votre scénario - devrait fonctionner très bien. –
Merci, Marc! J'ai révisé ma question.Vous êtes très utile! Si quelqu'un ne pouvait pas me donner une meilleure idée, je marquerais votre réponse =) – Shuo