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

T-SQLは、すべての非英数字および非数字文字を削除します

    柔軟な方法の1つ。

    CREATE FUNCTION [dbo].[fnRemovePatternFromString](@BUFFER VARCHAR(MAX), @PATTERN VARCHAR(128)) RETURNS VARCHAR(MAX) AS
    BEGIN
        DECLARE @POS INT = PATINDEX(@PATTERN, @BUFFER)
        WHILE @POS > 0 BEGIN
            SET @BUFFER = STUFF(@BUFFER, @POS, 1, '')
            SET @POS = PATINDEX(@PATTERN, @BUFFER)
        END
        RETURN @BUFFER
    END
    
    select dbo.fnRemovePatternFromString('cake & beer $3.99!?c', '%[$&.!?]%')
    
    (No column name)
    cake  beer 399c
    


    1. Oracleはnull値としてテーブルを作成します

    2. Facebookトークンを保存するフィールドタイプは何ですか?

    3. PHPで複数の画像の挿入とアップロードを実行するにはどうすればよいですか?

    4. SQLクエリのあいまいなフィールドエラーの克服