यह अपेक्षित परिणाम है:SQL सर्वर में =
तुलना करते समय ऑपरेटर पिछली जगहों पर ध्यान नहीं देता है।
SQL सर्वर ANSI/ISO SQL-92 विनिर्देश (धारा 8.2, सामान्य नियम #3) का अनुसरण करता है कि रिक्त स्थान के साथ स्ट्रिंग्स की तुलना कैसे करें। एएनएसआई मानक को तुलना में उपयोग किए जाने वाले वर्ण स्ट्रिंग्स के लिए पैडिंग की आवश्यकता होती है ताकि उनकी लंबाई उनकी तुलना करने से पहले मेल खाए। पैडिंग सीधे WHERE और HAVING क्लॉज विधेय और अन्य Transact-SQL स्ट्रिंग तुलनाओं के शब्दार्थ को प्रभावित करता है। उदाहरण के लिए, ट्रांजैक्ट-एसक्यूएल स्ट्रिंग्स 'एबीसी' और 'एबीसी' को अधिकांश तुलनात्मक कार्यों के लिए समान मानता है।
इस नियम का एकमात्र अपवाद LIKE विधेय है। जब LIKE प्रेडिकेट एक्सप्रेशन के दाईं ओर एक अनुगामी स्थान के साथ एक मान होता है, तो SQL सर्वर तुलना होने से पहले दो मानों को समान लंबाई तक पैड नहीं करता है। क्योंकि LIKE विधेय का उद्देश्य, परिभाषा के अनुसार, सरल स्ट्रिंग समानता परीक्षणों के बजाय पैटर्न खोजों को सुविधाजनक बनाना है, यह पहले बताए गए ANSI SQL-92 विनिर्देश के अनुभाग का उल्लंघन नहीं करता है।
स्रोत