MySQL में लाइक द्वारा ऑर्डर करने के लिए, केस स्टेटमेंट का उपयोग करें। वाक्य रचना इस प्रकार है -
चुनें *अपनेटेबलनाम से ऑर्डर करें जब आपका कॉलमनाम '%yourPatternValue1%' जैसा हो, तब 1 जब आपका कॉलमनाम '%yourPatternValue2%' जैसा हो, तब 2 और 3end;
उपरोक्त वाक्य रचना को समझने के लिए, आइए एक तालिका बनाते हैं। तालिका बनाने की क्वेरी इस प्रकार है -
mysql> टेबल बनाएं OrderByLikeDemo -> ( -> Id int, -> Name varchar(100) -> );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (1.84 सेकंड)
इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। क्वेरी इस प्रकार है -
mysql> OrderByLikeDemo मानों (100, 'जॉन स्मिथ') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.18 सेकंड) mysql> OrderByLikeDemo मानों में डालें (101, 'कैरोल टेलर'); क्वेरी ठीक है, 1 पंक्ति प्रभावित ( 0.23 सेकंड) mysql> ऑर्डरबायलाइक डेमो वैल्यू (102, 'डेविड मिलर') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.12 सेकंड) mysql> ऑर्डरबायलाइक डेमो मानों में डालें (103, 'माइक टेलर'); क्वेरी ठीक है, 1 पंक्ति प्रभावित ( 0.18 सेकंड) mysql> ऑर्डरबायलाइक डेमो वैल्यू (104, 'बॉब मिलर') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.11 सेकंड) mysql> ऑर्डरबायलाइक डेमो मानों में डालें (105, 'सैम विलियम्स'); क्वेरी ठीक है, 1 पंक्ति प्रभावित ( 0.16 सेकंड)
चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है -
mysql> OrderByLikeDemo से *चुनें;
निम्न आउटपुट है -
<पूर्व>+----------+--------------+| आईडी | नाम |+----------+--------------+| 100 | जॉन स्मिथ || 101 | कैरल टेलर || 102 | डेविड मिलर || 103 | माइक टेलर || 104 | बॉब मिलर || 105 | सैम विलियम्स |+----------+--------------+6 पंक्तियों में सेट (0.00 सेकंड)ORDER BY जैसे -
. के साथ सभी रिकॉर्ड प्राप्त करने की क्वेरी यहां दी गई हैmysql> ऑर्डरबायलाइकडेमो से *चुनें -> केस द्वारा ऑर्डर करें -> जब नाम '% टेलर%' जैसा हो तो 1 -> जब नाम '% मिलर%' जैसा हो तो 2 -> और 3 -> अंत;
निम्न आउटपुट है -
<पूर्व>+----------+--------------+| आईडी | नाम |+----------+--------------+| 101 | कैरल टेलर || 103 | माइक टेलर || 102 | डेविड मिलर || 104 | बॉब मिलर || 100 | जॉन स्मिथ || 105 | सैम विलियम्स |+----------+--------------+6 पंक्तियों में सेट (0.00 सेकंड)