الانتقال إلى المحتوى الرئيسي
إدخالإخراجالاسم المستعار

الوصف

في هذا التنسيق، يُفسَّر كائن JSON واحد على أنه قيمة واحدة. إذا كان الإدخال يحتوي على عدة كائنات JSON (مفصولة بفواصل)، فستُفسَّر على أنها صفوف منفصلة. إذا كانت بيانات الإدخال محاطة بـ []، فستُفسَّر على أنها مصفوفة من كائنات JSON.
لا يمكن تحليل هذا التنسيق إلا لجدول يحتوي على حقل واحد من النوع String. يجب تعيين الأعمدة المتبقية إلى DEFAULT أو MATERIALIZED، أو إغفالها.
بمجرد إجراء تسلسل لكائن JSON بالكامل إلى String، يمكنك استخدام دوال JSON لمعالجته.

مثال على الاستخدام

مثال بسيط

Query
DROP TABLE IF EXISTS json_as_string;
CREATE TABLE json_as_string (json String) ENGINE = Memory;
INSERT INTO json_as_string (json) FORMAT JSONAsString {"foo":{"bar":{"x":"y"},"baz":1}},{},{"any json stucture":1}
SELECT * FROM json_as_string;
Response
┌─json──────────────────────────────┐
│ {"foo":{"bar":{"x":"y"},"baz":1}} │
│ {}                                │
│ {"any json stucture":1}           │
└───────────────────────────────────┘

مصفوفة من كائنات JSON

Query
CREATE TABLE json_square_brackets (field String) ENGINE = Memory;
INSERT INTO json_square_brackets FORMAT JSONAsString [{"id": 1, "name": "name1"}, {"id": 2, "name": "name2"}];

SELECT * FROM json_square_brackets;
Response
┌─field──────────────────────┐
│ {"id": 1, "name": "name1"} │
│ {"id": 2, "name": "name2"} │
└────────────────────────────┘

إعدادات التنسيق

آخر تعديل في ٢٥ يونيو ٢٠٢٦