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

क्या MySQL क्लॉज द्वारा SELECT और HAVING/GROUP BY के बीच सामान्य उप-अभिव्यक्तियों को समाप्त करता है? इसका परीक्षण कैसे करें?

<घंटा/>

परीक्षण करने के लिए, स्लीप () फ़ंक्शन का उपयोग करें।

केस 1 -

वाक्य रचना इस प्रकार है -

अपना कॉलमनाम+स्लीप(आपका इंटेगरवैल्यू) अपनेटेबलनामग्रुप से अपने कॉलमनाम+स्लीप(yourIntegerValue);;
से चुनें

केस 2 - आप दूसरे सिंटैक्स का उपयोग कर सकते हैं जो इस प्रकार है -

अपना कॉलमनाम+स्लीप(आपका इंटेगरवैल्यू) किसी भी अन्य नाम के रूप में चुनें, अपने टेबलनाम समूह से अपने उपनाम से;

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

mysql> टेबल स्लीपडेमो बनाएं -> (-> वैल्यू इंट ->);क्वेरी ओके, 0 पंक्तियाँ प्रभावित (1.25 सेकंड)

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

mysql> स्लीपडेमो वैल्यू (40) में डालें; क्वेरी ओके, 1 पंक्ति प्रभावित (0.18 सेकंड) mysql> स्लीपडेमो वैल्यू (60) में डालें; क्वेरी ओके, 1 पंक्ति प्रभावित (0.19 सेकंड) mysql> स्लीपडेमो वैल्यू में डालें ( 60);क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.10 सेकंड)

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

mysql> स्लीपडेमो से *चुनें;

यहाँ आउटपुट है -

<पूर्व>+----------+| मूल्य |+----------+| 40 || 60 || 60 |+----------+3 पंक्तियाँ सेट में (0.00 सेकंड)

यहां SELECT और HAVING/GROUP BY क्लॉज के बीच सामान्य सब एक्सप्रेशन को खत्म करने की क्वेरी दी गई है।

केस 1 - क्वेरी इस प्रकार है -

mysql> सेलेक्ट वैल्यू+स्लीप(3) -> स्लीपडेमो से -> ग्रुप बाय वैल्यू+स्लीप(3);

आउटपुट इस प्रकार है -

<पूर्व>+----------------+| मूल्य+नींद(3) |+----------------+| 40 || 60 |+----------------+2 पंक्तियाँ सेट में (9.00 सेकंड)

उपरोक्त क्वेरी में प्रत्येक मान के लिए 9 सेकंड लगते हैं (3 सेकंड के लिए 40, 3 सेकंड के लिए 60, 3 सेकंड के लिए 60)।

केस 2 - क्वेरी इस प्रकार है -

mysql> सेलेक्ट वैल्यू+स्लीप(3) as v -> फ्रॉम स्लीपडेमो -> GROUP BY v;

आउटपुट इस प्रकार है -

<पूर्व>+----------+| वी |+------+| 40 || 60 |+------+2 पंक्तियाँ सेट में (9.00 सेकंड)
  1. - एकल MySQL क्वेरी में GROUP BY, HAVING और ORDER BY का उपयोग करके किसी विशिष्ट श्रेणी के बीच योग वाले रिकॉर्ड कैसे प्रदर्शित करें?

    आइए पहले एक टेबल बनाएं - तालिका बनाएं DemoTable(Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, CustomerName varchar(20), ProductPrice int);क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.70 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल (ग्राहक नाम, उत्पाद मूल्य) मान (डेविड, 1200) मे

  1. - MySQL में शर्तों के साथ क्वेरी कैसे ऑर्डर करें और चुनें?

    निम्नलिखित वाक्य रचना है - अपनेTableName क्रम से yourColumnName=0,yourColumnName; . द्वारा चुनें * आइए पहले एक टेबल बनाएं - );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.80 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1348 मानों में डालें(89);क्वेरी ठीक है, 1 पंक्ति प्रभावि

  1. - MySQL UNION SELECT और IN क्लॉज एक ही क्वेरी में

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