Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

शीर्ष सामान्य MySQL प्रश्न

MySQL क्वेरी को आमतौर पर एक बार लिखा जाता है और फिर कोड पुनरावृत्ति को कम करने के लिए क्लास फ़ंक्शंस में लपेटा जाता है। यह आलेख MySQL में सबसे अधिक बार उपयोग किए जाने वाले 10 प्रश्नों को सूचीबद्ध करता है।

एक क्वेरी अनिवार्य रूप से एक डेटाबेस तालिका या तालिकाओं के संयोजन से जानकारी प्राप्त करने का अनुरोध है। कई क्वेरी भाषाएं हैं जिन्हें सरल से जटिल प्रश्नों की एक श्रृंखला को निष्पादित करने के लिए लिखा जा सकता है। क्वेरी उस विशिष्ट डेटा के आधार पर कुछ मानदंडों को फ़िल्टर करेगी जिसे खोजने का अनुरोध किया गया है। यह डेटा प्रबंधन कार्यों को स्वचालित भी कर सकता है और गणना में संलग्न हो सकता है। यह मार्गदर्शिका 10 सबसे सामान्य MySQL प्रश्नों पर चर्चा करती है।

आइए इन डेमो डेटाबेस का उपयोग यह समझने में हमारी सहायता के लिए करें कि प्रत्येक क्वेरी कैसे कार्य करती है।

EmployeeID Name शीर्षक
1002 वेबस्टर डब्ल्यू. कार्यकारी
1003 लिज़ी एस. प्रबंधक
1004 ओलिवर टी. सॉफ्टवेयर इंजीनियर
EmployeeID विभाग आयु
1002 HR 36
1003 बिक्री 21
1004 IT 39

सभी को चुनें 

एक साधारण सेलेक्ट क्वेरी का उपयोग डेटाबेस से सभी डेटा को वापस लाने और भेजने के लिए किया जाता है। इसका सिंटैक्स इस तरह लिखा जा सकता है;

कोड:

कर्मचारियों में से चुनें;

परिणाम:

1002       वेबस्टर डब्ल्यू.     एग्जीक्यूटिव1003       लिजी एस.     मैनेजर1004       ओलिवर टी.      सॉफ्टवेयर इंजीनियर

तालिका में उपलब्ध सभी कॉलमों का चयन करने के लिए आपको "*" का उपयोग यह इंगित करने के लिए करना चाहिए कि आपको सभी संभावित जानकारी लौटा दी गई है। दूसरे, डेटाबेस तालिका से डेटा प्राप्त करने के लिए FROM कीवर्ड बताएं। अंत में, हमेशा अपने कथन को अर्धविराम ";" के साथ समाप्त करना याद रखें। अनुरोध को ठीक से पूरा करने के लिए।

कॉलम चुनें

विशिष्ट कॉलम से डेटा प्राप्त करने के लिए और सब कुछ नहीं, आप केवल तारांकन (*) का उपयोग करने के बजाय केवल फ़ील्ड नाम बताना चाहते हैं।

कोड:

कर्मचारियों से शीर्षक चुनें;

परिणाम:

शीर्षक कार्यकारी प्रबंधक सॉफ्टवेयर इंजीनियर

डेटाबेस से एकाधिक कॉलम चुनते समय उन्हें अल्पविराम से अलग किया जाना चाहिए। ऐसा ही;

शीर्षक चुनें, कर्मचारियों से नाम;

WHERE क्लॉज

एक सेलेक्ट क्वेरी में WHERE क्लॉज का उपयोग करते समय, डेटा रिकॉर्ड्स को फ़िल्टर किया जाएगा, फिर परिणाम के रूप में स्थिति (ओं) से मेल खाने वाले रिकॉर्ड्स को एक्सट्रेक्ट करें।

कोड: 

चुनें *कर्मचारियों से जहां कर्मचारी आईडी =1004;

परिणाम: 

1004       ओलिवर टी.          सॉफ्टवेयर इंजीनियर 

WHERE क्लॉज में एक से अधिक शर्तें हो सकती हैं जिन्हें AND कीवर्ड का उपयोग करके अलग किया जा सकता है।

तालिका बनाएं 

इस क्वेरी का उपयोग आपकी पसंद के कॉलम के साथ एक नई तालिका बनाने के लिए किया जा सकता है। कॉलम नाम जोड़ते समय उनके डेटा प्रकार को निर्दिष्ट करना सुनिश्चित करें।

कोड:

टेबल कर्मचारीइन्फो बनाएं (कर्मचारी आईडी आईएनटी, विभाग वचरर(25),आयु संख्या);

अपेक्षित तालिका परिणाम:

कर्मचारी आईडी
विभाग
विभाग
शून्य
शून्य
शून्य

एक बार जब आप CREATE TABLE कमांड चलाते हैं और इसे कॉलम टाइटल के साथ पॉप्युलेट करते हैं, तो उपरोक्त क्वेरी डेटाबेस में "कर्मचारीइन्फो" टेबल बनाती है। अनिवार्य रूप से प्रत्येक कॉलम NULL लौटाएगा क्योंकि हमने कोई विशेष मान नहीं डाला है। यह हमें हमारी अगली क्वेरी, INSERT INTO की ओर ले जाता है।

प्रश्न में सम्मिलित करें 

किसी तालिका में नए रिकॉर्ड की एक या अधिक पंक्तियों में मान सम्मिलित करने के लिए यह सबसे आम क्वेरी है। हम कुछ नमूना डेटा के साथ EmployeeInfo तालिका को पॉप्युलेट करने में सक्षम हैं;

कोड: 

कर्मचारी जानकारी (कर्मचारी आईडी, विभाग, आयु) मान (1002, मानव संसाधन, 46),(1003, वित्त, 28),(1004, आईटी, 39);

तालिका परिणाम:

कर्मचारी जानकारी

कर्मचारी आईडी
विभाग
आयु
1002
HR
46
1003
वित्त
28
1004
आईटी
39

INSERT INTO क्वेरी लिखते समय, VALUES कमांड पूरे स्टेटमेंट का हिस्सा होना चाहिए।

अपडेट क्वेरी

इस कीवर्ड का उपयोग किसी तालिका में एक या अधिक मौजूदा कॉलम बदलने के लिए किया जाता है। इस क्वेरी का उपयोग करने से कुछ शर्तों के आधार पर नए डेटा के साथ तालिका रिकॉर्ड अपडेट हो जाएंगे।

कर्मचारी जानकारी

कर्मचारी आईडी
विभाग
आयु
1002
HR
36
1003
बिक्री
21
1004
आईटी
39

कोड: 

अद्यतन कर्मचारी इन्फोसेट आयु =22WHERE कर्मचारी आईडी =1003;

तालिका परिणाम: 

कर्मचारी जानकारी

कर्मचारी आईडी
विभाग
आयु
1002
HR
36
1003
बिक्री
22
1004
आईटी
39

UPDATE कमांड का पालन करते हुए, हमेशा यह निर्दिष्ट करने के लिए SET कीवर्ड का उपयोग करें कि आप किस कॉलम को संशोधित करना चाहते हैं, फिर ठीक से बताएं कि आपको अपडेट किए गए डेटा को कहां लागू करना है।

क्वेरी से हटाएं

एक या एक से अधिक शर्तों के आधार पर किसी तालिका से रिकॉर्ड निकालने के लिए आपको DELETE FROM कथन का उपयोग करना होगा। शर्तों का उपयोग करते समय यह क्वेरी से प्रभावित होने वाली पंक्तियों की संख्या को सीमित करता है।

कोड: 

कर्मचारियों से DELETEWHERE Name ='Lizzy';

तालिका परिणाम:

कर्मचारी

कर्मचारी आईडी
नाम
शीर्षक
1002
वेबस्टर डब्ल्यू.
कार्यकारी 
1004
ओलिवर टी.
सॉफ्टवेयर इंजीनियर 

जैसा कि पहले लेख में शामिल किया गया था; WHERE कंडीशन का उपयोग करके यह निर्धारित करता है कि आप डेटा को फ़िल्टर करने और निष्पादित करने का अनुरोध कहाँ करते हैं। वह क्वेरी "लिज़ी" नाम से मेल खाने वाले कर्मचारियों की तालिका से हर रिकॉर्ड को हटाना है।

ग्रुप बाय, हैविंग क्लॉज का उपयोग करना 

GROUP BY क्लॉज का उपयोग ज्यादातर हमेशा समग्र कार्यों के साथ किया जाता है। इस कीवर्ड का उपयोग करने से परिणाम-सेट को एक या अधिक स्तंभों द्वारा समूहीकृत किया जाएगा।

HAVING कीवर्ड का उपयोग उस परिणाम सेट को फ़िल्टर करने के लिए किया जाता है। आदर्श रूप से, आपको लगता है कि इसके बजाय WHERE क्लॉज रखा जाएगा, हालांकि, HAVING क्लॉज एकत्रीकरण पर एक शर्त पेश करता है।

कर्मचारी जानकारी

कर्मचारी आईडी
विभाग
आयु
1002
HR
36
1003
बिक्री
21
1004
आईटी
39

कोड:

चुनें COUNT(आयु), EmployeeIDFROM EmployeeInfoGROUP द्वारा EmployeeIDHAVING COUNT(आयु)> 21;

परिणाम:

COUNT(आयु)  कर्मचारीID39 100436  1002   

कुल कार्य (SUM, AVG और COUNT)

तीन अत्यंत सामान्य समग्र कार्य हैं जो किसी तालिका से डेटा की व्याख्या या गणना चलाने की अनुमति देते हैं।

  • COUNT:निर्दिष्ट कॉलम से मेल खाने वाली पंक्तियों की संख्या देता है।
  • औसत:  किसी स्तंभ का औसत मान देता है
  • SUM:चयनित कॉलम में सभी मानों का योग देता है।

कर्मचारी जानकारी

कर्मचारी आईडी विभाग आयु
1002 एचआर 36
1003 बिक्री 21
1004 आईटी 39

COUNT के लिए कोड:

कर्मचारी जानकारी से COUNT(विभाग) चुनें;

परिणाम:

COUNT(विभाग):3

औसत के लिए कोड:

कर्मचारी जानकारी से औसत (आयु) चुनें;

परिणाम:

एवीजी(आयु):32

एसयूएम के लिए कोड

कर्मचारी जानकारी से योग (आयु) चुनें;

परिणाम:

SUM(आयु):96

शामिल हों

तालिकाओं के बीच संबंधित कॉलम के आधार पर, कम से कम दो तालिकाओं से पंक्तियों को एक साथ लाने के लिए जॉइन का उपयोग किया जाता है। सबसे आम अभ्यास शामिल हैं INNER, FULL और LEFT।

  • INNER जॉइन - अगर जॉइन कंडीशन सही है तो अलग-अलग टेबल से पंक्तियों को जोड़ती है।
  • पूर्ण जुड़ाव -  बाएं या दाएं तालिका रिकॉर्ड में कोई मिलान होने पर सभी पंक्तियां लौटाता है।
  • बाएं शामिल हों - बाएं तालिका से सभी पंक्तियों और दाएं तालिका से मिलान रिकॉर्ड पुनर्प्राप्त करता है।

कर्मचारी - तालिका #1(बाएं)

कर्मचारी आईडी नाम शीर्षक
1002 वेबस्टर डब्ल्यू. कार्यकारी 
1003 लिज़ी एस. प्रबंधक
1004 ओलिवर टी. सॉफ्टवेयर इंजीनियर 

कर्मचारी सूचना - तालिका #2(दाएं)

कर्मचारी आईडी विभाग आयु
1002 एचआर 36
1003 बिक्री 21
1004 आईटी 39

इनर जॉइन कोड: 

कर्मचारियों का चयन करें। 

परिणाम:

शीर्षक        विभाग कार्यकारी एचआर     प्रबंधक बिक्री     सॉफ्टवेयर इंजीनियर आईटी

पूर्ण जॉइन कोड:

चुनें *कर्मचारियों से  पूर्ण रूप से शामिल हों EmployeeInfo  पर Employees.EmployeeID =Employees.EmployeeID;

परिणाम:

डुप्लीकेट सहित, दोनों तालिकाओं से सभी पंक्तियों और स्तंभों को पकड़ लेगा, और उन्हें एक संपूर्ण तालिका में संयोजित कर देगा।

लेफ्ट जॉइन कोड:

कर्मचारियों का चयन करें। 

परिणाम:

नाम           एजवेबस्टर डब्ल्यू. 36    लिजी एस. 21   ओलिवर टी.  39

"कर्मचारी" तालिका में "कर्मचारी आईडी" कॉलम "कर्मचारीइन्फो" तालिका में "कर्मचारी आईडी" को संदर्भित करता है, अनिवार्य रूप से यह बताता है कि कर्मचारी आईडी कॉलम दोनों तालिकाओं के बीच संबंध है। जुड़ना मुश्किल हो सकता है लेकिन साथ ही बड़े डेटाबेस के माध्यम से सॉर्ट करते समय बेहद सहायक हो सकता है।

उपयोगकर्ता और डेटाबेस अनिवार्य रूप से एक ही भाषा बोलकर सूचनाओं का सफलतापूर्वक आदान-प्रदान करने में सक्षम हैं। ऊपर सूचीबद्ध प्रश्न शुरुआती और विशेषज्ञों दोनों द्वारा सबसे अधिक उपयोग किए जाते हैं। MySQL क्वेरीज़ लिखना डेटाबेस प्रबंधन के क्षेत्र में सबसे लगातार कार्य माना जाता है।

अप्रैल 2022 में केल्सी पर्किन्स द्वारा इस लेख की समीक्षा और अद्यतन किया गया था।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL से कैसे चुनें जहां टेबल का नाम वेरिएबल है

  2. 9 वास्तव में उपयोगी MySQL दिनांक फ़ंक्शन जो याद रखने में आसान हैं

  3. जॉइन क्वेरीज़ बनाम मल्टीपल क्वेश्चन

  4. MySQL में RPAD () फ़ंक्शन कैसे काम करता है

  5. PyInstaller, कल्पना फ़ाइल, ImportError:'blah' नाम का कोई मॉड्यूल नहीं