Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

SQL server memfilter karakter tanda baca CJK

Anda dapat membuat karakter Unicode menggunakan NCHAR() fungsi:

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

Anda juga dapat menggunakannya di WHERE klausa sebagai berikut, termasuk juga menggunakannya dengan REPLACE() berfungsi untuk menyingkirkannya. Anda hanya perlu menentukan susunan biner (yang diakhiri dengan _BIN2 ) untuk memastikan Anda tidak mengganti karakter lain yang diterjemahkan ke spasi (walaupun saya tidak yakin bahwa efek bersihnya akan berbeda jika tidak menggunakan susunan biner, setidaknya dalam skenario ini).

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sintaks salah di dekat ''

  2. Coba Praktik Terbaik Pemantauan Database MySQL ini

  3. Apa alternatif untuk kursor untuk perulangan sql?

  4. SQL Server ganti, hapus semua setelah karakter tertentu

  5. SQL Server Nvarchar dan Java menyiapkan pernyataan