有没有一种直接的方法来使用SQL查找最后一次出现的字符串的索引?我现在正在使用SQL Server 2000.我基本上需要.NET System.String.LastIndexOf方法提供的功能.一个小的谷歌搜索透露了这个 - 函数来检索最后一个索引 - 但如果你传入一个"文本"列表达式,这不起作用.在其他地方找到的其他解决方案只有在您搜索的文本长度为1个字符时才起作用.
我可能不得不做一个功能.如果我这样做,我会在这里发布,所以你们大家可以看看它,也许可以利用它.
我有一个包含整个文件名的列的表,数据如下所示:
FilePath FileSize
------------------------------ --------
dsch2_chs_wyj.rar 694KB
AllInOneHash.rar 19KB
FilePropertyModifier.rar 12KB
jquery_1_7_api_chm_chs.rar 285KB
startupmgr.rar 38KB
JQueryTableExample_Edi.rar 33KB
hdpartioncalc_csharp.rar 49KB
XMLMenuTest.zip 3KB
Run Code Online (Sandbox Code Playgroud)
现在我想提取文件扩展名,比如.rar插入到新表中.
INSERT INTO Attachment
(
Id,
[FileName],
ExtensionName,
StoredPath,
CreateOn,
UploaderIP,
DataBinary
)
SELECT ba.Id,
ba.Title,
'{Extension Name}',
ba.FilePath,
GETDATE(),
NULL,
NULL
FROM BlogAttachment ba
Run Code Online (Sandbox Code Playgroud)
但是T-SQL没有LastIndexOf()功能.如何以简单的方式切割子串?