sql >> Databasteknik >  >> RDS >> Sqlserver

Hitta icke-ASCII-tecken i varchar-kolumner med SQL Server

Här är en lösning för en kolumnsökning med PATINDEX.
Den visar även StartPosition, InvalidCharacter och ASCII-koden.

select line,
  patindex('%[^ !-~]%' COLLATE Latin1_General_BIN,Line) as [Position],
  substring(line,patindex('%[^ !-~]%' COLLATE Latin1_General_BIN,Line),1) as [InvalidCharacter],
  ascii(substring(line,patindex('%[^ !-~]%' COLLATE Latin1_General_BIN,Line),1)) as [ASCIICode]
from  staging.APARMRE1
where patindex('%[^ !-~]%' COLLATE Latin1_General_BIN,Line) >0


  1. hur säkra är SUB-utlåtanden

  2. PostgreSQL - hämta raden som har maxvärdet för en kolumn

  3. Optimera GROUP BY-fråga för att hämta den senaste raden per användare

  4. Hur man ser den faktiska Oracle SQL-satsen som körs