न्यूनतम और अधिकतम मूल्य खोजने के लिए आपको तिथियों के बीच सशर्त चयन के लिए CASE कथन का उपयोग करने की आवश्यकता है। CASE स्टेटमेंट को एग्रीगेट फंक्शन MIN() और MAX() के साथ रैप करें। वाक्य रचना इस प्रकार है:
चुनेंमिन (केस जब CURDATE() आपके StartDateColumnName और आपके EndDateColumnName के बीच तब आपका LowPriceColumnName ELSE आपका HighPriceColumnName END) जैसा कि कोई भी VariableName, MAX (केस जब CURDATE () के बीच आपकी StartDateColumnName और आपका EndLowVPriceColumnName के बीच होता है;उपरोक्त वाक्य रचना को समझने के लिए, आइए एक तालिका बनाते हैं। तालिका बनाने की क्वेरी इस प्रकार है:
mysql> टेबल बनाएं कंडीशनल सेलेक्ट -> (-> आईडी नॉट न्यूल AUTO_INCREMENT, -> StartDate datetime, -> EndDate datetime, -> LowPrice int, -> HighPrice int, -> PRIMARY KEY(Id) -> ); क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित हुई हैं (0.69 सेकंड)इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। क्वेरी इस प्रकार है:
mysql> कंडीशनल सिलेक्ट (स्टार्टडेट, एंडडेट, लोअरप्राइस, हायरप्राइस) वैल्यूज ('2019-01-02', '2019-04-02', 5,10) में डालें; क्वेरी ओके, 1 पंक्ति प्रभावित (0.12 सेकंड) mysql> सशर्त चयन (स्टार्टडेट, एंडडेट, लोअरप्राइस, हायरप्राइस) मान ('2019-04-02', '2019-04-20', 0,20) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) mysql> सम्मिलित करें कंडीशनल सेलेक्ट (स्टार्टडेट, एंडडेट, लोअरप्राइस, हायरप्राइस) वैल्यू ('2019-04-03', '2019-04-21', 0,30) में; क्वेरी ओके, 1 पंक्ति प्रभावित (0.17 सेकंड)चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है:
mysql> कंडीशनलसेलेक्ट से *चुनें;निम्न आउटपुट है:
<पूर्व>+-----+------------------------- ---+---------------+----------------+| आईडी | प्रारंभ दिनांक | समाप्ति तिथि | लोअरप्राइस | हायरप्राइस |+-----+---------------------+-------------------------- -+---------------+----------------+| 1 | 2019-01-02 00:00:00 | 2019-04-02 00:00:00 | 5 | 10 || 2 | 2019-04-02 00:00:00 | 2019-04-20 00:00:00 | 0 | 20 || 3 | 2019-04-03 00:00:00 | 2019-04-21 00:00:00 | 0 | 30 |+----+---------------+--------------------- -+---------------+---------------+3 पंक्तियों में सेट (0.00 सेकंड)
तिथियों के बीच न्यूनतम और अधिकतम मूल्य चुनने की क्वेरी यहां दी गई है:
mysql> सेलेक्ट करें -> मिन (केस जब करडेट () स्टार्टडेट और एंडडेट के बीच तब लोअरप्राइस ईएलएसई हायरप्राइस एंड) मिनिमम वैल्यू के रूप में, -> मैक्स (केस जब करडेट () स्टार्टडेट और एंडडेट के बीच तब लोअरप्राइस ELSE हायरप्राइस एंड) मैक्सिमम वैल्यू के रूप में -> सशर्त चयन से;
निम्न आउटपुट है:
<पूर्व>+--------------+--------------+| न्यूनतम मूल्य | अधिकतम मूल्य |+--------------+--------------+| 5 | 30 |+--------------+--------------+1 पंक्ति सेट में (0.00 सेकंड)