छंटाई और SQL सर्वर में चरित्र डेटा की तुलना केवल बाइनरी collations के साथ कोड अंक से निर्धारित होता है।
select ascii(';') as semicolon, ascii('9') as nine where ';' COLLATE Latin1_General_BIN < '9' COLLATE Latin1_General_BIN;
अन्य collations, तुलना नियमों की सहायता से
और सॉर्ट क्रम आदेश (alphas से पहले विशेष वर्ण) अंतर्निहित बाइनरी कोड बिंदु अनुक्रम की परवाह किए बिना शब्दकोश है। इसके अलावा, विंडोज कॉलेशन भाषाई "शब्द सॉर्ट" नियमों का भी पालन करता है। उदाहरण के लिए:
SELECT 1 WHERE 'coop' COLLATE SQL_Latin1_General_CP1_CI_AS < 'co-op' COLLATE SQL_Latin1_General_CP1_CI_AS;
SELECT 1 WHERE 'coop' COLLATE Latin1_General_CI_AS < 'co-op' COLLATE Latin1_General_CI_AS;
स्रोत
2015-03-20 02:09:25
धन्यवाद दान, मुझे पता था कि यह इस तरह कुछ गूढ़ होगा। यदि आप मुझसे पूछें तो खूनी भ्रमित और obfuscating! –
@ जोनहैनलॉन, हाँ यह भ्रमित है। अच्छी बात यह है कि आपने भाषा और कोड पृष्ठों के बारे में भी नहीं पूछा :-) –