sql >> Database teknologi >  >> RDS >> Sqlserver

Udskiftning af bestemte tegn i e-mail-adresser med '*' i en SQL-forespørgsel

DECLARE @String VARCHAR(100) = '[email protected]'

SELECT  LEFT(@String, 3) + '*****@' 
        + REVERSE(LEFT(RIGHT(REVERSE(@String) , CHARINDEX('@', @String) +2), 2))
        + '******'
        + RIGHT(@String, 4)

Resultat

exa*****@gm******.com

Tænkte lige på en anden enklere løsning

SELECT LEFT(@String, 3) + '*****@' 
       + SUBSTRING(@String, CHARINDEX('@',@String)+1,2)
       + '*******'
       + RIGHT(@String, 4) 

Dette vil også give dig de nøjagtige samme resultater.



  1. Kodningsproblem i AJAX

  2. #1064 fejl med INSERT INTO

  3. MySQL Forespørgsel om at vælge data fra sidste uge?

  4. JSON_OBJECT() – Opret et JSON-objekt fra en liste over nøgle-/værdipar i MySQL