获取使用SQL文件的扩展名? [重复](Get extension of a file usin

2019-08-03 02:06发布

可能重复:
获取在SQL Server子

比方说,我有MyImage.pngMyDoc.doc等在一个数据库表中的列。

我怎么只能拿到文件扩展名?

Answer 1:

试试这个:

declare @str varchar(20)='MyDoc.doc';
select reverse(left(reverse(@str),charindex('.',reverse(@str))-1))

SQL小提琴演示



Answer 2:

试试这个 :

select parsename(filename,1) from yourTable

sqlfiddle演示



Answer 3:

随着字符串函数:

SELECT Extension =
   Right([Name],
        CHARINDEX('.',
                  REVERSE([Name]))-1)
FROM dbo.Files

SQL小提琴演示



Answer 4:

declare @str varchar(20)='MyDoc.doc'
select reverse(left(reverse(@str),CHARINDEX('.',reverse(@str))-1))

FIDDLE DEMO



Answer 5:

  SELECT RIGHT('myFile.txt', 
               CHARINDEX('.', REVERSE('myFile.txt'))-1) AS 'File Extension'

文档: SUBSTRING , RIGHT , CHARINDEX , REVERSE



文章来源: Get extension of a file using SQL? [duplicate]