MySQL में, JSON_PRETTY()
फ़ंक्शन JSON मानों की सुंदर-मुद्रण प्रदान करता है। यह JSON मानों को अच्छी तरह से स्वरूपित तरीके से लौटाता है, जिससे हम मनुष्यों के लिए पढ़ना आसान हो जाता है।
आप फ़ंक्शन के तर्क के रूप में JSON मान प्रदान करते हैं। इसके बाद यह फ़ंक्शन अपने स्वरूपण नियमों के अनुसार स्वरूपित उन मानों को लौटाता है।
सिंटैक्स
वाक्य रचना इस प्रकार है:
JSON_PRETTY(json_val)
जहां json_val
प्रारूप करने के लिए JSON मान है। यह एक JSON मान या JSON मान का मान्य स्ट्रिंग प्रतिनिधित्व होना चाहिए। यदि मान JSON दस्तावेज़ नहीं है, या यदि इसे एक के रूप में पार्स नहीं किया जा सकता है, तो फ़ंक्शन एक त्रुटि के साथ विफल हो जाता है।
उदाहरण 1 - मूल उपयोग
प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है।
SELECT JSON_PRETTY('{"a": 1, "b": 2, "c": 3}') Result;
परिणाम:
+----------------------------------+ | Result | +----------------------------------+ | { "a": 1, "b": 2, "c": 3 } | +----------------------------------+
किसी ऑब्जेक्ट सदस्य की कुंजी और मान को एक कोलन द्वारा अलग किया जाता है जिसके बाद एक स्पेस होता है (':
')।
अलग-अलग ऑब्जेक्ट सदस्यों को अलग करने वाला अल्पविराम नई लाइन से पहले मुद्रित होता है जो दो तत्वों या सदस्यों को अलग करता है।
उदाहरण 2 - सरणी
प्रत्येक सरणी तत्व या ऑब्जेक्ट सदस्य एक अलग लाइन पर दिखाई देता है, जो उसके पैरेंट की तुलना में एक अतिरिक्त स्तर द्वारा इंडेंट किया जाता है।
अलग-अलग सरणी तत्वों को अलग करने वाला अल्पविराम नई पंक्ति से पहले मुद्रित होता है जो दो तत्वों या सदस्यों को अलग करता है (वस्तुओं के समान)।
यहां किसी सरणी को फ़ॉर्मेट करने का एक उदाहरण दिया गया है।
SELECT JSON_PRETTY('[1, 2, 3]') Result;
परिणाम:
+-------------------+ | Result | +-------------------+ | [ 1, 2, 3 ] | +-------------------+
यहां दो सरणियों का उदाहरण दिया गया है, एक दूसरे के अंदर नेस्टेड है।
SELECT JSON_PRETTY('[1, 2, [3, 4, 5]]') Result;
परिणाम:
+-------------------------------------------+ | Result | +-------------------------------------------+ | [ 1, 2, [ 3, 4, 5 ] ] | +-------------------------------------------+
उदाहरण 3 - खाली वस्तुएं और सरणी
खाली वस्तुओं और सरणियों को एक ही पंक्ति में मुद्रित किया जाता है। ओपनिंग और क्लोजिंग ब्रेस के बीच कोई स्पेस प्रिंट नहीं होता है।
SELECT JSON_PRETTY('[1, 2, [], {}]') Result;
परिणाम:
+--------------------------+ | Result | +--------------------------+ | [ 1, 2, [], {} ] | +--------------------------+
उदाहरण 4 - व्हाइटस्पेस
इस मान में मौजूद बाहरी रिक्त स्थान और न्यूलाइन का आउटपुट पर कोई प्रभाव नहीं पड़ता है।
SELECT JSON_PRETTY('[ 1 , 2 , 3]') Result;
परिणाम:
+-------------------+ | Result | +-------------------+ | [ 1, 2, 3 ] | +-------------------+
उदाहरण 5 - इंडेंट
इंडेंटेशन का प्रत्येक स्तर दो प्रमुख रिक्त स्थान जोड़ता है।
SET @data = '{"Person": {"Name": "Bart", "Age": 10, "Friends": ["Bart", "Milhouse"]}}'; SELECT JSON_PRETTY(@data) Result;
परिणाम:
{ "Person": { "Age": 10, "Name": "Bart", "Friends": [ "Bart", "Milhouse" ] } }