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

SQL-server, der filtrerer CJK-tegnsætningstegn

Du kan oprette et Unicode-tegn ved hjælp af NCHAR() funktion:

SELECT NCHAR(0x3000); -- http://unicode-table.com/en/3000/

Du kan også bruge det i en WHERE klausul som følger, herunder også at bruge den med REPLACE() funktion for at slippe af med dem. Du skal blot angive en binær sortering (en ender på _BIN2 ) for at sikre, at du ikke erstatter andre tegn, der oversættes til et mellemrum (selvom jeg ikke er sikker på, at nettoeffekten af ​​det ville være anderledes, når du ikke bruger en binær sortering, i det mindste i dette scenarie).

SELECT * 
FROM   [Table]
WHERE  [Column] LIKE N'%' + NCHAR(0x3000) + N'%' COLLATE Latin1_General_100_BIN2;

UPDATE tbl
SET    tbl.Column = REPLACE(tbl.[Column] COLLATE Latin1_General_100_BIN2,
                            NCHAR(0x3000),
                            N' ')
FROM   [Table] tbl
WHERE  [Column] LIKE N'%' + NCHAR(0x3000) + N'%' COLLATE Latin1_General_100_BIN2;



  1. MySQL jokertegn i vælg

  2. Sådan nærmer du dig dilemmaet:eksportordrer fra det gamle magento-system importeres til nyt magento, overlappende id'er

  3. Sum flere rækker datoforskel Mysql

  4. FLOT data fra MySQL via PHP?