Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

एकल MySQL क्वेरी में GROUP BY, HAVING और ORDER BY का उपयोग करके किसी विशिष्ट श्रेणी के बीच योग वाले रिकॉर्ड कैसे प्रदर्शित करें?

<घंटा/>

आइए पहले एक टेबल बनाएं -

mysql> तालिका बनाएं DemoTable(Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, CustomerName varchar(20), ProductPrice int);क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.70 सेकंड)

इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें -

mysql> डेमोटेबल (ग्राहक नाम, उत्पाद मूल्य) मान ('क्रिस', 600) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.18 सेकंड) mysql> डेमोटेबल (ग्राहक नाम, उत्पाद मूल्य) मान ('डेविड', 450) में डालें;क्वेरी ओके, 1 पंक्ति प्रभावित (0.09 सेकंड) mysql> डेमोटेबल (ग्राहक नाम, उत्पाद मूल्य) मान ('क्रिस', 980) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.40 सेकंड) mysql> डेमोटेबल (ग्राहक नाम, उत्पाद मूल्य) में डालें मान ('माइक', 1200); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.11 सेकंड) mysql> डेमोटेबल (ग्राहक नाम, उत्पाद मूल्य) मान ('क्रिस', 400) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.11 सेकंड) mysql> डेमोटेबल (ग्राहक नाम, उत्पाद मूल्य) मान ('डेविड', 1200) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.20 सेकंड)

चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें -

mysql> डेमोटेबल से *चुनें;

यह निम्नलिखित आउटपुट देगा -

<पूर्व>+----+--------------+--------------+| आईडी | ग्राहक का नाम | उत्पाद मूल्य |+----+--------------+--------------+| 1 | क्रिस | 600 || 2 | डेविड | 450 || 3 | क्रिस | 980 || 4 | माइक | 1200 || 5 | क्रिस | 400 || 6 | डेविड | 1200 |+----+--------------+--------------+6 पंक्तियों में सेट (0.00 सेकंड)

संख्याओं की एक विशिष्ट श्रेणी प्रदर्शित करने के लिए क्वेरी निम्नलिखित है -

mysql> CustomerName,sum(ProductPrice) AS Total_Price by DemoTable Group by CustomerName का चयन करें, जिसमें CustomerName DESC द्वारा 1600 और 2000 के बीच का योग (ProductPrice) है;

यह निम्नलिखित आउटपुट देगा -

<पूर्व>+--------------+----------------+| ग्राहक का नाम | Total_Price |+--------------+---------------+| डेविड | 1650 || क्रिस | 1980 |+--------------+---------------+2 पंक्तियों में सेट (0.00 सेकंड)
  1. - डुप्लिकेट रिकॉर्ड को समूहबद्ध करने और संबंधित अधिकतम मान प्रदर्शित करने के लिए एकल MySQL क्वेरी में GROUP BY और COUNT का उपयोग करना

    आइए पहले एक टेबल बनाएं - );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.79 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल मानों में डालें ( 30,678);क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.09 सेकंड) चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें - डेमोटेबल से *चुनें;

  1. - एकल फ़ील्ड द्वारा ऑर्डर करें और शेष रिकॉर्ड को उसी क्रम में MySQL के साथ प्रदर्शित करें

    आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.82 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल मानों में डालें (135, जॉन स्मिथ); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.11 सेकंड) चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें - डेमोटेबल से *चुन

  1. - AND &OR ऑपरेटर के साथ एकल MySQL क्वेरी का उपयोग करके एक विशिष्ट रिकॉर्ड प्राप्त करें

    आइए पहले एक टेबल बनाएं - );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (1.20 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable2015 मानों में डालें (4, रॉबर्ट, US);क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.16 सेकंड) चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें - DemoTable2