sql >> データベース >  >> RDS >> Sqlserver

SQL Server 2005:末尾から始まるcharindex

    あなたはそれをどうする必要がありますか??特定の区切り文字が最後に出現した後の文字を取得する必要がありますか?

    その場合:文字列を逆にして、通常の CHARINDEX を使用して検索します:

    declare @test varchar(100)
    set @test = 'some.file.name'
    
    declare @reversed varchar(100)
    set @reversed = REVERSE(@test)
    
    select 
        REVERSE(SUBSTRING(@reversed, CHARINDEX('.', @reversed)+1, 100))
    

    「some.file」(最後の「.」までの文字)が返されます。元のファイル名に。

    「LASTCHARINDEX」などはSQL Serverに直接ありません。 SQL Server 2005 以降で考えられることは、優れた .NET 拡張ライブラリであり、それをアセンブリとして SQL Server にデプロイすることです。T-SQL は文字列操作にあまり強くありませんが、.NET は実際にそうです。



    1. テーブルに存在しない値を検索する

    2. mysql-python:Mac OS Xで完全にスタンドアロンの_mysql.soを構築しますか?

    3. Knex.jsはSQLインジェクションを防ぎますか?

    4. SequelizeでSequelizeUniqueConstraintErrorを無視する方法は?