MySQL क्लाइंट में \G मॉडिफायर क्वेरी परिणाम को टेबल फॉर्मेट के बजाय **वर्टिकल (लंबवत) फॉर्मेट** में प्रदर्शित करता है। यह चौड़े टेबल या लंबे टेक्स्ट कॉलम के लिए उपयोगी है।
तीनों टर्मिनेटर की तुलना
केस 1: सेमीकॉलन (;) - डिफॉल्ट
mysql> SELECT * FROM DemoOfVertical;
आउटपुट (हॉरिजॉन्टल टेबल):
+----+-------+
| Id | Name |
+----+-------+
| 1 | Bob |
| 2 | Carol |
| 3 | David |
| 4 | Mike |
+----+-------+
केस 2: \g - सेमीकॉलन के बराबर
mysql> SELECT * FROM DemoOfVertical\g
आउटपुट (हॉरिजॉन्टल टेबल - ; जैसा ही):
+----+-------+
| Id | Name |
+----+-------+
| 1 | Bob |
| 2 | Carol |
| 3 | David |
| 4 | Mike |
+----+-------+
केस 3: \G - वर्टिकल फॉर्मेट
mysql> SELECT * FROM DemoOfVertical\G
आउटपुट (वर्टिकल):
*************************** 1. row ***************************
Id: 1
Name: Bob
*************************** 2. row ***************************
Id: 2
Name: Carol
*************************** 3. row ***************************
Id: 3
Name: David
*************************** 4. row ***************************
Id: 4
Name: Mike
4 rows in set (0.00 sec)
\G कब उपयोगी है?
- चौड़े टेबल: कई कॉलम हों तो हॉरिजॉन्टल टेबल स्क्रीन से बाहर चली जाती है
- लंबे टेक्स्ट: TEXT/BLOB कॉलम का पूरा कंटेंट पढ़ने में आसान
- डीबगिंग: एक पंक्ति का पूरा डेटा एक साथ देखना
- JSON/लॉग डेटा: संरचित डेटा पढ़ने के लिए
उदाहरण: JSON कॉलम के साथ
mysql> SELECT * FROM logs WHERE id = 1\G
*************************** 1. row ***************************
id: 1
level: ERROR
message: Connection timeout
context: {"host": "db1", "port": 3306, "retry": 3}
timestamp: 2024-01-15 10:30:45
नोट
- \G केवल MySQL कमांड-लाइन क्लाइंट में काम करता है
- प्रोग्रामिंग लैंग्वेज कनेक्टर्स (PHP, Python, Java) में इसका कोई प्रभाव नहीं
- \g और ; दोनों स्टेटमेंट टर्मिनेटर हैं, \G टर्मिनेटर + फॉर्मेटर है