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

MySQL में सभी पंक्तियों से मान प्राप्त करें और उन्हें अल्पविराम से अलग करके एक ही पंक्ति में प्रदर्शित करें

GROUP_CONCAT() का उपयोग करके सभी मानों को एक स्ट्रिंग में संयोजित करना

इसके लिए GROUP_CONCAT() का उपयोग करें। GROUP BY क्लॉज का उपयोग न करें, क्योंकि GROUP_CONCAT() बेहतर और त्वरित समाधान है।

पहले टेबल बनाएं:

mysql> create table DemoTable1371 ( Id int, CountryName varchar(40) ); Query OK, 0 rows affected (0.89 sec)

रिकॉर्ड डालें:

mysql> insert into DemoTable1371 values(100,'US'); Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable1371 values(100,'UK'); Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable1371 values(101,'AUS'); Query OK, 1 row affected (0.27 sec)
mysql> insert into DemoTable1371 values(101,'Angola'); Query OK, 1 row affected (0.14 sec)

सभी रिकॉर्ड देखें:

mysql> select * from DemoTable1371;

आउटपुट:

+------+-------------+ | Id   | CountryName | +------+-------------+ | 100  | US          | | 100  | UK          | | 101  | AUS         | | 101  | Angola      | +------+-------------+ 4 rows in set (0.00 sec)

सभी पंक्तियों से मान प्राप्त करके अल्पविराम से अलग एक पंक्ति में प्रदर्शित करने की क्वेरी:

mysql> select group_concat(CountryName separator ',') from DemoTable1371;

परिणाम:

+-----------------------------------------+ | group_concat(CountryName separator ',') | +-----------------------------------------+ | US,UK,AUS,Angola                        | +-----------------------------------------+ 1 row in set (0.00 sec)

व्याख्या: GROUP_CONCAT() सभी पंक्तियों के मानों को एक स्ट्रिंग में जोड़ता है। SEPARATOR ',' अल्पविराम को विभाजक के रूप में सेट करता है (डिफ़ॉल्ट भी अल्पविराम है)। GROUP BY के बिना यह पूरी टेबल को एक ग्रुप मानता है। डिफ़ॉल्ट अधिकतम लंबाई 1024 बाइट्स है, जिसे group_concat_max_len सिस्टम वेरिएबल से बदला जा सकता है।

  1. - MySQL में पहली और आखिरी पंक्ति को छोड़कर सभी पंक्तियाँ कैसे प्राप्त करें?

    MySQL में किसी ग्रुप या टेबल की पहली और आखिरी पंक्ति को छोड़कर मध्य की पंक्तियाँ प्राप्त करने के लिए, MIN() और MAX() के साथ सबक्वेरी का उपयोग करें। यह टाइम-सीरीज़ डेटा या क्रमबद्ध रिकॉर्ड्स के लिए उपयोगी है। उदाहरण: पहली और आखिरी StudentId को छोड़कर डेमो टेबल बनाएं: mysql> CREATE TABLE DemoTab

  1. - MySQL में विशिष्ट पंक्ति प्राप्त करना

    WHERE, ORDER BY और LIMIT से विशिष्ट पंक्ति चुनें टेबल बनाएं और डेटा डालें: mysql> create table DemoTable1972 ( Section char(1), StudentName varchar(20) ); Query OK, 0 rows affected (0.00 sec) mysql> insert into DemoTable1972 values(D,Chris); ... क्वेरी: C से बड़े सेक्शन को क्रमबद्ध करके पहले 2

  1. - MySQL में DISTINCT से डुप्लिकेट पंक्तियों में से एक पंक्ति दिखाएं

    DISTINCT कीवर्ड से अद्वितीय पंक्तियां प्राप्त करें पूरी पंक्ति के डुप्लिकेट को हटाकर केवल अद्वितीय पंक्तियां प्राप्त करने के लिए SELECT DISTINCT * का उपयोग करें। टेबल बनाएं और डेटा डालें: mysql> create table DemoTable1998 ( Name varchar(20) ); Query OK, 0 rows affected (0.61 sec) mysql> insert