संरचित क्वेरी भाषा (एसक्यूएल) डेटाबेस उपयोगकर्ताओं को डेटाबेस से जानकारी निकालने के लिए अनुकूलित क्वेरी बनाने की क्षमता प्रदान करता है। पिछले लेख में, हमने डेटाबेस से जानकारी निकालने की खोज की थी SQL चयन प्रश्नों का उपयोग करना. आइए उस चर्चा का विस्तार करें और पता लगाएं कि आप उन्नत प्रदर्शन कैसे कर सकते हैं प्रश्नों डेटा पुनर्प्राप्त करने के लिए विशिष्ट परिस्थितियों से मेल खाता है.
आइए आमतौर पर इस्तेमाल किए जाने वाले के आधार पर एक उदाहरण पर विचार करें उत्तरी हवा डेटाबेस, जो अक्सर ट्यूटोरियल के रूप में डेटाबेस उत्पादों के साथ शिप करता है।
यहाँ डेटाबेस की उत्पाद तालिका का एक अंश दिया गया है:
उत्पाद आइ डि | उत्पाद का नाम | आपूर्तिकर्ता आईडी | प्रति इकाई मात्रा | यूनिट मूल्य | स्टॉक में इकाइयाँ |
---|---|---|---|---|---|
1 | चाय | 1 | १० बॉक्स x २० बैग | 18.00 | 39 |
2 | चांग | 1 | २४ - १२ आउंस बोतलें | 19.00 | 17 |
3 | सौंफ सिरप | 1 | 12 - 550 मिली की बोतलें | 10.00 | 13 |
4 | शेफ एंटोन का काजुन मसाला | 2 | 48 - 6 आउंस जार | 22.00 | 53 |
5 | शेफ एंटोन का गम्बो मिक्स | 2 | 36 बक्से | 21.35 | 0 |
6 | दादी का बॉयसेनबेरी स्प्रेड | 3 | 12 - 8 ऑउंस जार | 25.00 | 120 |
7 | अंकल बॉब के ऑर्गेनिक सूखे नाशपाती | 3 | 12 - 1 एलबी पीकेजी। | 30.00 | 15 |
सरल सीमा शर्तें
हम अपनी क्वेरी पर जो पहले प्रतिबंध लगाएंगे उनमें साधारण सीमा शर्तें शामिल हैं। हम इन्हें SELECT क्वेरी के WHERE क्लॉज में निर्दिष्ट कर सकते हैं, मानक ऑपरेटरों, जैसे , >=, और <= के साथ निर्मित साधारण कंडीशन स्टेटमेंट का उपयोग करके।
सबसे पहले, आइए एक सरल क्वेरी का प्रयास करें जो हमें डेटाबेस में उन सभी उत्पादों की एक सूची निकालने की अनुमति देती है जिनका यूनिटप्राइस 20.00 से अधिक है:
उत्पाद का नाम चुनें, यूनिटप्राइस
उत्पादों से
जहां यूनिटप्राइस>20.00
यह चार उत्पादों की एक सूची तैयार करता है, जैसा कि नीचे दिखाया गया है:
उत्पाद का नाम इकाई मूल्य
शेफ एंटोन का गंबो मिक्स 21.35
शेफ एंटन काजुन मसाला 22.00
दादी का बॉयसेनबेरी स्प्रेड २५.००
अंकल बॉब के जैविक सूखे नाशपाती 30.00
हम स्ट्रिंग मानों के साथ WHERE क्लॉज का भी उपयोग कर सकते हैं। यह मूल रूप से वर्णों को संख्याओं के बराबर करता है, जिसमें A मान 1 का प्रतिनिधित्व करता है और Z मान 26 का प्रतिनिधित्व करता है। उदाहरण के लिए, हम निम्न क्वेरी के साथ U, V, W, X, Y या Z से शुरू होने वाले नामों वाले सभी उत्पाद दिखा सकते हैं:
उत्पाद का नाम चुनें
उत्पादों से
जहां उत्पाद का नाम>= 'टी'
जो परिणाम उत्पन्न करता है:
उत्पाद का नाम
अंकल बॉब के ऑर्गेनिक सूखे नाशपाती
सीमाओं का उपयोग करके श्रेणी को व्यक्त करना
WHERE क्लॉज हमें कई शर्तों का उपयोग करके एक मूल्य पर एक श्रेणी की स्थिति को लागू करने की अनुमति देता है। उदाहरण के लिए, यदि हम अपनी क्वेरी को ऊपर लेना चाहते हैं और परिणामों को 15.00 और 20.00 के बीच कीमतों वाले उत्पादों तक सीमित करना चाहते हैं, तो हम निम्नलिखित क्वेरी का उपयोग कर सकते हैं:
उत्पाद का नाम चुनें, यूनिटप्राइस
उत्पादों से
जहां यूनिटप्राइस> 15.00 और यूनिटप्राइस <20.00
यह नीचे दिखाया गया परिणाम उत्पन्न करता है:
उत्पाद का नाम इकाई मूल्य
चाय १८.००
चांग 19.00
BETWEEN. के साथ परास व्यक्त करना
SQL सिंटैक्स के बीच एक शॉर्टकट भी प्रदान करता है जो हमें शामिल करने के लिए आवश्यक शर्तों की संख्या को कम करता है और क्वेरी को अधिक पठनीय बनाता है। उदाहरण के लिए, उपरोक्त दो WHERE शर्तों का उपयोग करने के बजाय, हम उसी क्वेरी को इस प्रकार व्यक्त कर सकते हैं:
उत्पाद का नाम चुनें, यूनिटप्राइस
उत्पादों से
जहां यूनिटप्राइस 15.00 और 20.00 के बीच
हमारे अन्य कंडीशन क्लॉज की तरह, BETWEEN स्ट्रिंग मानों के साथ भी काम करता है। अगर हम वी, डब्ल्यू या एक्स से शुरू होने वाले सभी देशों की सूची तैयार करना चाहते हैं, तो हम क्वेरी का उपयोग कर सकते हैं:
उत्पाद का नाम चुनें
उत्पादों से
जहां उत्पाद का नाम "ए" और "डी" के बीच है
जो परिणाम उत्पन्न करता है:
उत्पाद का नाम
सौंफ सिरप
चाय
चांग
शेफ एंटोन का गम्बो मिक्स
शेफ एंटोन का काजुन मसाला
WHERE क्लॉज SQL भाषा का एक शक्तिशाली हिस्सा है जो आपको परिणामों को निर्दिष्ट सीमाओं के भीतर आने वाले मानों तक सीमित रखने की अनुमति देता है। यह आमतौर पर व्यावसायिक तर्क व्यक्त करने में मदद करने के लिए उपयोग किया जाता है और प्रत्येक डेटाबेस पेशेवर के टूलकिट का हिस्सा होना चाहिए। एसक्यूएल ज्ञान के बिना उन लोगों के लिए इसे सुलभ बनाने के लिए संग्रहीत प्रक्रिया में सामान्य खंडों को शामिल करना अक्सर सहायक होता है।