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

MySQL GROUP BY के साथ ग्रुप के अनुसार सभी पंक्तियों को सूचीबद्ध करना?

ग्रुप के अनुसार सभी पंक्तियों को सूचीबद्ध करने के लिए, आप GROUP_CONCAT() फ़ंक्शन का उपयोग कर सकते हैं। आइए पहले एक टेबल बनाते हैं:

mysql> CREATE TABLE DemoTable (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    Name VARCHAR(20),
    Value VARCHAR(100)
);

टेबल में कुछ रिकॉर्ड डालें:

mysql> INSERT INTO DemoTable(Name, Value) VALUES('John', 'John');
mysql> INSERT INTO DemoTable(Name, Value) VALUES('Carol', 'Carol');
mysql> INSERT INTO DemoTable(Name, Value) VALUES('John', 'Works');
mysql> INSERT INTO DemoTable(Name, Value) VALUES('Carol', 'Works');
mysql> INSERT INTO DemoTable(Name, Value) VALUES('John', 'At');
mysql> INSERT INTO DemoTable(Name, Value) VALUES('Carol', 'At');
mysql> INSERT INTO DemoTable(Name, Value) VALUES('John', 'Amazon');
mysql> INSERT INTO DemoTable(Name, Value) VALUES('Carol', 'Google');

टेबल से सभी रिकॉर्ड प्रदर्शित करें:

mysql> SELECT * FROM DemoTable;

आउटपुट:

+----+-------+--------+
| Id | Name  | Value  |
+----+-------+--------+
| 1  | John  | John   |
| 2  | Carol | Carol  |
| 3  | John  | Works  |
| 4  | Carol | Works  |
| 5  | John  | At     |
| 6  | Carol | At     |
| 7  | John  | Amazon |
| 8  | Carol | Google |
+----+-------+--------+

ग्रुप के अनुसार सभी पंक्तियों को सूचीबद्ध करने के लिए क्वेरी। यहाँ 'John' के लिए मान प्राप्त होंगे जैसे "John Works At Amazon" आईडी 1, 3, 5, 7 से। इसी तरह 'Carol' के लिए भी काम करेगा:

mysql> SELECT Name, GROUP_CONCAT(Value SEPARATOR ' ') AS `Complete_Status` FROM DemoTable GROUP BY Name;

आउटपुट:

+-------+-----------------------+
| Name  | Complete_Status       |
+-------+-----------------------+
| Carol | Carol Works At Google |
| John  | John Works At Amazon  |
+-------+-----------------------+
  1. - MySQL में SELECT और SHOW कमांड के परिणामों को कैसे संयोजित करें

    समाधान उपयोगकर्ता-परिभाषित वेरिएबल (@) या सिस्टम वेरिएबल (@@) का उपयोग करके एक ही SELECT में कई मान दिखाएं। उपयोगकर्ता वेरिएबल SELECT @first_name AS EmployeeFirstName, @last_name AS EmployeeLastName; +-------------------+------------------+ | EmployeeFirstName | EmployeeLastName | +---------------

  1. - MySQL में डायनामिक ऐरे के साथ LIKE क्वेरी कैसे करें?

    सिंटैक्स select * from yourTableName where yourColumnName2 like %yourValue% order by yourColumnName1 asc limit yourLimitValue; उदाहरण: कॉमा-सेपरेटेड नामों में खोज insert into demo74(user_names) values(John Smith1,John Smith2,John Smith3), (John Smith1), (David Smith1), (John Smith1,John Smith2,Jo

  1. - MySQL में GROUP BY HAVING से समान ID वाली पंक्तियों का SUM निकालें

    GROUP BY + HAVING = 2000; उदाहरण डेटा insert into demo84 values(1,2000), (1,2000), (2,1800), (2,2200), (3,1700); परिणाम: कुल ≥ 2000 वाले ID +------+-------+ | id | Total | +------+-------+ | 1 | 4000 | | 2  | 4000 | +------+-------+ ID 1: 2000+2000 = 4000 ID 2: 1800+2200 = 4000 I