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

MySQL में GROUP_CONCAT के साथ JSON फॉर्मेट कैसे बनाएं?


आप MySQL से GROUP_CONCAT() फंक्शन का उपयोग करके JSON फॉर्मेट बना सकते हैं। सिंटैक्स इस प्रकार है:

SELECT yourColumnName1, GROUP_CONCAT(CONCAT('{anyName:"', yourColumnName, '", anyName:"', yourColumnName, '"}')) AS anyVariableName FROM yourTableName GROUP BY yourColumnName1;

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

mysql> CREATE TABLE JsonFormatDemo (
    -> UserId INT,
    -> UserName VARCHAR(100),
    -> UserEmail VARCHAR(100)
    -> ); Query OK, 0 rows affected (0.99 sec)

INSERT कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। रिकॉर्ड डालने का क्वेरी:

mysql> INSERT INTO JsonFormatDemo VALUES(101,'John','John@gmail.com'); Query OK, 1 row affected (0.19 sec)
mysql> INSERT INTO JsonFormatDemo VALUES(101,'Bob','John@gmail.com'); Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO JsonFormatDemo VALUES(102,'Carol','Carol@gmail.com'); Query OK, 1 row affected (0.12 sec)
mysql> INSERT INTO JsonFormatDemo VALUES(103,'Sam','Sam@gmail.com'); Query OK, 1 row affected (0.15 sec)

SELECT स्टेटमेंट का उपयोग करके टेबल से सभी रिकॉर्ड प्रदर्शित करें:

mysql> SELECT * FROM JsonFormatDemo;

आउटपुट

+--------+----------+-----------------+
| UserId | UserName | UserEmail       |
+--------+----------+-----------------+
| 101    | John     | John@gmail.com  |
| 101    | Bob      | John@gmail.com  |
| 102    | Carol    | Carol@gmail.com |
| 103    | Sam      | Sam@gmail.com   |
+--------+----------+-----------------+
4 rows in set (0.00 sec)

GROUP_CONCAT() फंक्शन की मदद से JSON फॉर्मेट बनाने का क्वेरी:

mysql> SELECT UserId,
    -> GROUP_CONCAT(CONCAT('{Name:"', UserName, '", Email:"', UserEmail, '"}')) AS JsonFormat
    -> FROM JsonFormatDemo
    -> GROUP BY UserId;

आउटपुट

+--------+----------------------------------------------------------------------------+
| UserId | JsonFormat                                                                 |
+--------+----------------------------------------------------------------------------+
| 101    | {Name:"John", Email:"John@gmail.com"},{Name:"Bob", Email:"John@gmail.com"} |
| 102    | {Name:"Carol", Email:"Carol@gmail.com"}                                    |
| 103    | {Name:"Sam", Email:"Sam@gmail.com"}                                        |
+--------+----------------------------------------------------------------------------+
3 rows in set (0.00 sec)

  1. - MySQL में इंडेक्स के साथ तालिका कैसे बनाएं?

    MySQL में तालिका निर्माण के बाद CREATE INDEX स्टेटमेंट का उपयोग करके इंडेक्स बनाए जा सकते हैं, या तालिका निर्माण के समय परिभाषित किए जा सकते हैं। विधि 1: तालिका निर्माण के बाद CREATE TABLE table_name ( col1 datatype, col2 datatype ); CREATE INDEX index_name1 ON table_name (col1); CREATE IN

  1. - MySQL व्यू कैसे बनाएं?

    MySQL व्यू बनाने के लिए, नीचे दिए गए सिंटैक्स में CREATE VIEW का उपयोग करें: create view yourViewName as select * from yourTableName; आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable1802 ( StudentId int, StudentName varchar(20) ); Query OK, 0 rows affected (0.00 sec) इन्सर्ट कमा

  1. - MySQL में DATE_FORMAT से टेबल कॉलम के दिनांक प्रारूप बदलें

    DATE_FORMAT(date, format) फ़ंक्शन का उपयोग करके DATETIME/DATE कॉलम को वांछित स्ट्रिंग प्रारूप में प्रदर्शित करें। टेबल बनाएं mysql> CREATE TABLE DemoTable1906 (DueTime DATETIME); डेटा डालें mysql> INSERT INTO DemoTable1906 VALUES(NOW()), (CURDATE()), (2017-10-11), (2015-01-12), (2018-04-25);