0

フラットファイルソースに接続されているssis派生列変換の他の列値の一部として、以下の文字列から1005187069_0_A233-107400-1.pdfを使用する必要があります。

\\Hprweb001\ftp_root\HRPFTP\Usr\MediConnect\InboundImages\1005187069_0_A233-107400-1.pdf

部分文字列関数の助けを借りてそれが可能であることを知っていて、試しました:

SUBSTRING( [Column 5] , 1, FINDSTRING( [Column 5] , " ",1 )-FINDSTRING( [Column 5] , "\",8 )+1)

しかし、それは私にエラーを与えています。助けてください。

4

1 に答える 1

2

必要なクエリは次のとおりです。

DECLARE @text NVARCHAR(MAX)
SET @text = '\Hprweb001\ftp_root\HRPFTP\Usr\MediConnect\InboundImages\1005187069_0_A233-107400-1.pdf'

SELECT
  REVERSE(
     SUBSTRING(
        REVERSE(@text),
        0,
        CHARINDEX('\', REVERSE(@text))
      )
)

ここにSQLFiddleがあるので、それがどのように機能するかを見ることができます

また、別のより単純なバージョンは次のとおりです。

SELECT RIGHT(@text, CHARINDEX('\' ,REVERSE(@text))-1)

この SQLFiddleを使用してこれを実行し、結果を確認できます。

于 2013-10-29T18:58:16.077 に答える