तुलना ऑपरेटर (<
. सहित) और >
) स्ट्रिंग मानों के साथ-साथ संख्याओं के साथ "काम" करें।
MySQL के लिए
<ब्लॉकक्वॉट>
डिफ़ॉल्ट रूप से, स्ट्रिंग तुलना केस संवेदी नहीं होती है और वर्तमान वर्ण सेट का उपयोग करती है। डिफ़ॉल्ट latin1
. है (cp1252 पश्चिम यूरोपीय), जो अंग्रेजी के लिए भी अच्छा काम करता है।
स्ट्रिंग तुलना केस संवेदी होगी जब तुलना की जा रही स्ट्रिंग्स के कैरेक्टरसेट कॉलेशन केस संवेदनशील होते हैं, यानी वर्ण सेट का नाम _cs
में समाप्त होता है के बजाय _ci
. यहां MySQL संदर्भ मैनुअल में उपलब्ध सभी जानकारी को दोहराने का वास्तव में कोई मतलब नहीं है।
MySQL तुलना ऑपरेटर संदर्भ:
http://dev.mysql.com/doc/refman/5.5/en/comparison-operators.html
MySQL कैरेक्टरसेट्स/कोलेशन्स के बारे में अधिक जानकारी:
http://dev.mysql.com/doc/refman/5.5/en/charset.html
आपके द्वारा पूछे गए विशिष्ट प्रश्नों का उत्तर देने के लिए:
प्रश्न: एसक्यूएल में तारों की तुलना करने का यह एक संभावित तरीका है?
ए: हाँ, MySQL और SQL सर्वर दोनों में
प्रश्न: और यह कैसे कार्य करता है?
ए: एक तुलना ऑपरेटर एक बूलियन देता है, या तो TRUE, FALSE या NULL।
प्रश्न: शब्दकोश क्रम में पहले एक स्ट्रिंग दूसरे से कम आती है? उदाहरण के लिए, गेंद पानी से कम है?
ए: हां, क्योंकि 'बी' वर्णसेट संयोजन में 'डब्ल्यू' से पहले आता है, व्यंजक
'BALL' < 'water'
TRUE लौटाएगा। (यह चरित्र . पर निर्भर करता है और संयोजन . पर ।
प्रश्न: और यह तुलना केस संवेदी है?
ए: कोई विशेष तुलना केस संवेदी है या नहीं यह डेटाबेस सर्वर पर निर्भर करता है; डिफ़ॉल्ट रूप से, SQL सर्वर और MySQL दोनों ही केस असंवेदनशील होते हैं।
MySQL में एक वर्णसेट संयोजन निर्दिष्ट करके स्ट्रिंग तुलना करना संभव है जो केस संवेदनशील है (वर्णसेट नाम _ci के बजाय _cs में समाप्त होगा)
प्रश्न: उदाहरण के लिए बॉल <पानी, अपर केस कैरेक्टर इन तुलनाओं को प्रभावित करता है?
ए: डिफ़ॉल्ट रूप से, SQL सर्वर और MySQL दोनों में, व्यंजक
'BALL' < 'water'
TRUE लौटाएगा।