sql >> Databasteknik >  >> RDS >> Sqlserver

Hur byter man ut flera tecken i SQL?

Ett användbart knep i SQL är möjligheten att använda @var = function(...) att tilldela ett värde. Om du har flera poster i ditt rekorduppsättning, tilldelas din var flera gånger med biverkningar:

declare @badStrings table (item varchar(50))

INSERT INTO @badStrings(item)
SELECT '>' UNION ALL
SELECT '<' UNION ALL
SELECT '(' UNION ALL
SELECT ')' UNION ALL
SELECT '!' UNION ALL
SELECT '?' UNION ALL
SELECT '@'

declare @testString varchar(100), @newString varchar(100)

set @teststring = 'Juliet ro><0zs my s0x()[email protected]@[email protected]!'
set @newString = @testString

SELECT @newString = Replace(@newString, item, '') FROM @badStrings

select @newString -- returns 'Juliet ro0zs my s0xrzone'


  1. Direkt åtkomst till en SQL-serverdatabas i Xamarin.Forms

  2. Hämta data från lagrad procedur som har flera resultatuppsättningar

  3. Lås Oracle-databasen innan du kör skripten Delete/Load data

  4. Hur kopierar jag SQL Azure-databas till min lokala utvecklingsserver?