什么是在SQL 2008中获取最后一个字符索引的最佳方法

Mah*_*der 43 sql string sql-server-2008

在C#中,我们有String.LastIndexOf方法来获取给定字符串的特定字符位置的最后一个索引.是否有任何类似的功能在SQL Server中执行相同的操作.我试过使用CHARINDEX但无法实现它.

ant*_*nce 75

有点棘手,但你可以这样做:

REVERSE(SUBSTRING(REVERSE([field]),0,CHARINDEX('[char]',REVERSE([field]))))
Run Code Online (Sandbox Code Playgroud)

  • 这里的答案更简洁有效:http://stackoverflow.com/a/13610627/197591 (2认同)

Aar*_*and 28

DECLARE @x VARCHAR(32) = 'xyzxyzyyythgetdghydgsh';
SELECT LEN(@x) - CHARINDEX('y', REVERSE(@x)) + 1;
Run Code Online (Sandbox Code Playgroud)