CASE कथन का उपयोग करना एक अच्छा विकल्प है। यूनियन का प्रयोग न करें। आइए पहले एक टेबल बनाएं -
mysql> टेबल बनाएं DemoTable (Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, ShippingDate datetime);क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.63 सेकंड)
इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें -
mysql> डेमोटेबल (शिपिंगडेट) मान ('2019-04-21') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) mysql> डेमोटेबल (शिपिंगडेट) मान ('2019-01-01') में डालें;क्वेरी ओके, 1 पंक्ति प्रभावित (0.13 सेकंड) mysql> डेमोटेबल (शिपिंगडेट) मान ('2019-05-11') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.16 सेकंड) mysql> डेमोटेबल (शिपिंगडेट) मानों में डालें ( '2018-12-31');क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.18 सेकंड)mysql> डेमोटेबल (शिपिंगडेट) मान ('2019-02-18') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.19 सेकंड)पूर्व>चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें -
mysql> डेमोटेबल से *चुनें;यह निम्नलिखित आउटपुट उत्पन्न करेगा -
<पूर्व>+----+---------------------+| आईडी | शिपिंग तिथि |+----+---------------------+| 1 | 2019-04-21 00:00:00 || 2 | 2019-01-01 00:00:00 || 3 | 2019-05-11 00:00:00 || 4 | 2018-12-31 00:00:00 || 5 | 2019-02-18 00:00:00 |+----+---------------------+5 पंक्तियों में सेट (0.00 सेकंड)
मामले के अनुसार क्रम का उपयोग करके चयन आदेश को संरक्षित करने के लिए क्वेरी निम्नलिखित है।
mysql> डिमोटेबल ऑर्डर से केस के हिसाब से * चुनें जब शिपिंग की तारीखयह निम्नलिखित आउटपुट उत्पन्न करेगा -
<पूर्व>+----+---------------------+| आईडी | शिपिंग तिथि |+----+---------------------+| 3 | 2019-05-11 00:00:00 || 1 | 2019-04-21 00:00:00 || 5 | 2019-02-18 00:00:00 || 2 | 2019-01-01 00:00:00 || 4 | 2018-12-31 00:00:00 |+----+---------------------+5 पंक्तियों में सेट (0.00 सेकंड)