Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Máy chủ SQL lọc các ký tự dấu câu CJK

Bạn có thể tạo một ký tự Unicode bằng cách sử dụng NCHAR() chức năng:

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

Bạn cũng có thể sử dụng nó trong WHERE như sau, bao gồm cả việc sử dụng nó với REPLACE() chức năng để loại bỏ chúng. Bạn chỉ cần chỉ định đối chiếu nhị phân (một đối chiếu kết thúc bằng _BIN2 ) để đảm bảo bạn không thay thế bất kỳ ký tự nào khác dịch sang khoảng trắng (mặc dù tôi không chắc rằng hiệu ứng thực của ký tự đó sẽ khác khi không sử dụng đối chiếu nhị phân, ít nhất là trong trường hợp này).

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. Làm cách nào để hoán đổi giá trị cột trong sql server 2008?

  2. Làm cách nào để bạn chuyển hoặc xuất dữ liệu SQL Server 2005 sang Excel

  3. Chạy truy vấn db (sql server 2005) với ajax. Nó có khả thi không?

  4. Tại sao chúng ta không thể sử dụng các phép nối bên ngoài trong CTE đệ quy?

  5. SQL Server:hàm dateiff dẫn đến tràn khi sử dụng MILLISECOND