sql >> Databáze >  >> RDS >> Sqlserver

T-SQL trim   (a další nealfanumerické znaky)

Tím se odstraní všechny nealfanumerické znaky

CREATE FUNCTION [dbo].[fnRemoveBadCharacter]
(
    @BadString nvarchar(20)
)
RETURNS nvarchar(20)
AS
BEGIN

            DECLARE @nPos INTEGER
            SELECT @nPos = PATINDEX('%[^a-zA-Z0-9_]%', @BadString)

            WHILE @nPos > 0
            BEGIN
                        SELECT @BadString = STUFF(@BadString, @nPos, 1, '')
                        SELECT @nPos = PATINDEX('%[^a-zA-Z0-9_]%', @BadString)
            END

            RETURN @BadString
END

Použijte funkci jako:

UPDATE TableToUpdate
SET ColumnToUpdate = dbo.fnRemoveBadCharacter(ColumnToUpdate)
WHERE whatever


  1. Ukládání souborů na SQL Server

  2. Referenční tabulka SQL:Jak vytvářet a zapisovat základní dotazy

  3. ClusterControl:Úvod do nového monitoru dotazů

  4. Jak funguje funkce Strftime() v SQLite