MariaDB
 sql >> डेटाबेस >  >> RDS >> MariaDB

मारियाडीबी JSON_MERGE () समझाया गया

मारियाडीबी में, JSON_MERGE() एक अंतर्निहित फ़ंक्शन है जो दो या अधिक JSON दस्तावेज़ों को मर्ज करता है और परिणाम देता है।

JSON_MERGE() फ़ंक्शन को बहिष्कृत कर दिया गया है, और भविष्य की समस्याओं से बचने के लिए, आपको JSON_MERGE_PATCH() का उपयोग करना चाहिए इसके बजाय कार्य करें। JSON_MERGE_PATCH() फ़ंक्शन JSON_MERGE() . के लिए RFC 7396-संगत प्रतिस्थापन है ।

सिंटैक्स

वाक्य रचना इस प्रकार है:

JSON_MERGE(json_doc, json_doc[, json_doc] ...)

जहां json_doc मर्ज करने के लिए JSON दस्तावेज़ हैं।

उदाहरण

प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है।

SELECT JSON_MERGE('{"name":"Wag"}', '{"type":"Dog"}');

परिणाम:

+------------------------------------------------+
| JSON_MERGE('{"name":"Wag"}', '{"type":"Dog"}') |
+------------------------------------------------+
| {"name": "Wag", "type": "Dog"}                 |
+------------------------------------------------+

हम देख सकते हैं कि दो दस्तावेज़ों को एक में मिला दिया गया है।

यहां एक उदाहरण दिया गया है जो तीन दस्तावेज़ों को मिलाता है:

SELECT JSON_MERGE(
    '{ "name" : "Wag" }', 
    '{ "type" : "Dog" }',
    '{ "score" : [ 9, 7, 8 ] }'
    ) AS Result;

परिणाम:

+----------------------------------------------------+
| Result                                             |
+----------------------------------------------------+
| {"name": "Wag", "type": "Dog", "score": [9, 7, 8]} |
+----------------------------------------------------+

सरणी

JSON_MERGE() . के बीच एक अंतर और JSON_MERGE_PATCH() क्या वह JSON_MERGE() है सरणियों को मिलाता है (JSON_MERGE_PATCH() नहीं करता है):

SELECT JSON_MERGE(
    '[1,2,3]', 
    '[4,5,6]'
    ) AS Result;

परिणाम:

+--------------------+
| Result             |
+--------------------+
| [1, 2, 3, 4, 5, 6] |
+--------------------+

JSON_MERGE_PATCH() के साथ इसका प्रयास कर रहे हैं परिणाम केवल दूसरी सरणी लौटाया जा रहा है।

शून्य तर्क

अगर कोई तर्क NULL है , परिणाम NULL . है :

SELECT 
    JSON_MERGE('{"a":1}', null) AS a,
    JSON_MERGE(null, '{"a":1}') AS b,
    JSON_MERGE(null, null) AS c;

परिणाम:

+------+------+------+
| a    | b    | c    |
+------+------+------+
| NULL | NULL | NULL |
+------+------+------+

गलत पैरामीटर गणना

बिना किसी तर्क के फ़ंक्शन को कॉल करने से त्रुटि होती है:

SELECT JSON_MERGE();

परिणाम:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'JSON_MERGE'

जब आप केवल एक तर्क देते हैं तो ऐसा ही होता है:

SELECT JSON_MERGE('{"a":1}');

परिणाम:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'JSON_MERGE'

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मारियाडीबी में FIELD () कैसे काम करता है

  2. मारियाडीबी में आरपीएडी () कैसे काम करता है

  3. मारियाडीबी में डेटाटाइम में एक घंटा जोड़ने के 8 तरीके

  4. रॉकी लिनक्स और अल्मालिनक्स पर मारियाडीबी कैसे स्थापित करें

  5. मारियाडीबी में SUBSTRING_INDEX () कैसे काम करता है