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

MySQL में डुप्लिकेट VARCHAR मानों के आधार पर औसत निकालें

GROUP BY के साथ VARCHAR कॉलम द्वारा समूहित औसत

जब एक संख्यात्मक कॉलम का औसत किसी VARCHAR कॉलम के अद्वितीय मानों के अनुसार चाहिए, तो GROUP BY varchar_column के साथ AVG(numeric_column) का उपयोग करें।

टेबल और डेटा

mysql> CREATE TABLE DemoTable(
    Value INT,
    Value2 VARCHAR(100)
);
Query OK, 0 rows affected (0.84 sec)
mysql> INSERT INTO DemoTable VALUES(10,'999.999.999.999');
Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO DemoTable VALUES(20,'888.888.888.888');
Query OK, 1 row affected (0.14 sec)
mysql> INSERT INTO DemoTable VALUES(30,'999.999.999.999');
Query OK, 1 row affected (0.09 sec)

सभी रिकॉर्ड

mysql> SELECT * FROM DemoTable;
+-------+-----------------+
| Value | Value2          |
+-------+-----------------+
| 10    | 999.999.999.999 |
| 20    | 888.888.888.888 |
| 30    | 999.999.999.999 |
+-------+-----------------+
3 rows in set (0.00 sec)

VARCHAR मान के अनुसार औसत

mysql> SELECT Value2, AVG(Value) FROM DemoTable GROUP BY Value2;

परिणाम:

+-----------------+------------+
| Value2          | avg(Value) |
+-----------------+------------+
| 999.999.999.999 | 20.0000    |
| 888.888.888.888 | 20.0000    |
+-----------------+------------+
2 rows in set (0.06 sec)

गणना: '999.999.999.999' के लिए Value: 10 और 30 → औसत 20। '888.888.888.888' के लिए Value: 20 → औसत 20। GROUP BY VARCHAR कॉलम पर पूरी तरह से काम करता है।

  1. - MySQL में TIMESTAMPDIFF का उपयोग करके दो DATETIME मानों के बीच अंतर ज्ञात करें

    MySQL में दो DATETIME मानों के बीच अंतर की गणना MySQL में TIMESTAMPDIFF() फ़ंक्शन दो डेटाइम मानों के बीच निर्दिष्ट इकाई (सेकंड, मिनट, घंटे, दिन, आदि) में अंतर लौटाता है। DATEDIFF() के विपरीत जो केवल दिन लौटाता है, TIMESTAMPDIFF लचीला है। टेबल बनाना ); Query OK, 0 rows affected (0.86 sec) डेटा डाल

  1. - MySQL क्वेरी डुप्लिकेट टुपल्स खोजने और गिनती प्रदर्शित करने के लिए?

    डुप्लिकेट टुपल्स खोजने के लिए GROUP BY HAVING क्लॉज का उपयोग करें। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable -> ( -> Id int, -> Name varchar(20) -> ); Query OK, 0 rows affected (0.80 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: mysql> insert into De

  1. - MySQL में GROUP BY HAVING से डुप्लिकेट कॉलम मान खोजें और प्रदर्शित करें

    किसी कॉलम में डुप्लिकेट मान (एक से अधिक बार आने वाले) खोजने के लिए GROUP BY और 1 का उपयोग करें। टेबल बनाएं mysql> CREATE TABLE DemoTable1858 (ModelNumber VARCHAR(50)); डेटा डालें mysql> INSERT INTO DemoTable1858 VALUES(Audi A4), (Audi A6), (Audi A4), (Audi Q5), (Audi R8), (Audi Q5); डुप्लि