Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर CJK विराम चिह्नों को फ़िल्टर करता है

आप NCHAR() . का उपयोग करके एक यूनिकोड वर्ण बना सकते हैं समारोह:

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

आप उसका उपयोग WHERE . में भी कर सकते हैं क्लॉज इस प्रकार है, जिसमें REPLACE() . के साथ इसका उपयोग करना भी शामिल है उनसे छुटकारा पाने का कार्य करता है। आपको बस एक बाइनरी कॉलेशन निर्दिष्ट करने की आवश्यकता है (एक _BIN2 . में समाप्त होता है ) यह सुनिश्चित करने के लिए कि आप किसी अन्य वर्ण को प्रतिस्थापित नहीं कर रहे हैं जो किसी स्थान पर अनुवाद करता है (हालांकि मुझे यकीन नहीं है कि बाइनरी कॉलेशन का उपयोग न करने पर इसका शुद्ध प्रभाव अलग होगा, कम से कम इस परिदृश्य में)।

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. NOT IN क्लॉज के अंदर NULL मान

  2. डेटाटाइम कॉलम को वर्ष, महीने और सप्ताह में विभाजित करना

  3. कॉलम और पंक्तियों को समूहीकृत करना और स्विच करना

  4. pyodbc.connect() काम करता है, लेकिन sqlalchemy.create_engine().connect() नहीं

  5. SQL सर्वर में डेटाटाइम बनाम डेटाटाइमऑफ़सेट:क्या अंतर है?