Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

JSON_PRETTY () - Định dạng tài liệu JSON để dễ đọc hơn trong MySQL

Trong MySQL, JSON_PRETTY() hàm cung cấp khả năng in ấn đẹp các giá trị JSON. Nó trả về các giá trị JSON theo cách được định dạng độc đáo, giúp con người chúng ta đọc dễ dàng hơn.

Bạn cung cấp các giá trị JSON làm đối số cho hàm. Sau đó, hàm trả về các giá trị được định dạng theo quy tắc định dạng của nó.

Cú pháp

Cú pháp như sau:

JSON_PRETTY(json_val)

Ở đâu json_val là giá trị JSON để định dạng. Đây phải là giá trị JSON hoặc biểu diễn chuỗi hợp lệ của giá trị JSON. Nếu giá trị không phải là tài liệu JSON hoặc nếu không thể phân tích cú pháp thành một tài liệu thì hàm không thành công do lỗi.

Ví dụ 1 - Cách sử dụng cơ bản

Đây là một ví dụ để chứng minh.

SELECT JSON_PRETTY('{"a": 1, "b": 2, "c": 3}') Result;

Kết quả:

+----------------------------------+
| Result                           |
+----------------------------------+
| {
  "a": 1,
  "b": 2,
  "c": 3
} |
+----------------------------------+

Khóa và giá trị của một thành viên đối tượng được phân tách bằng dấu hai chấm theo sau là dấu cách (‘: ‘).

Dấu phẩy phân tách các thành viên đối tượng riêng lẻ được in trước dòng mới phân tách hai phần tử hoặc thành viên.

Ví dụ 2 - Mảng

Mỗi phần tử mảng hoặc thành viên đối tượng xuất hiện trên một dòng riêng biệt, được thụt lề thêm một cấp so với cấp chính của nó.

Dấu phẩy phân tách các phần tử mảng riêng lẻ được in trước dòng mới phân tách hai phần tử hoặc thành viên (giống như với các đối tượng).

Đây là một ví dụ về định dạng một mảng.

SELECT JSON_PRETTY('[1, 2, 3]') Result;

Kết quả:

+-------------------+
| Result            |
+-------------------+
| [
  1,
  2,
  3
] |
+-------------------+

Dưới đây là ví dụ về hai mảng, một mảng được lồng vào bên trong mảng kia.

SELECT JSON_PRETTY('[1, 2, [3, 4, 5]]') Result;

Kết quả:

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

Ví dụ 3 - Đối tượng và Mảng trống

Các đối tượng và mảng trống được in trên một dòng. Không có khoảng cách nào được in giữa dấu ngoặc nhọn mở và đóng.

SELECT JSON_PRETTY('[1, 2, [], {}]') Result;

Kết quả:

+--------------------------+
| Result                   |
+--------------------------+
| [
  1,
  2,
  [],
  {}
] |
+--------------------------+

Ví dụ 4 - Khoảng trắng

Các khoảng trắng không liên quan và dòng mới có trong giá trị này không ảnh hưởng đến kết quả.

SELECT JSON_PRETTY('[1, 2, 3]') Result;

Kết quả:

+-------------------+
| Result            |
+-------------------+
| [
  1,
  2,
  3
] |
+-------------------+

Ví dụ 5 - Thụt lề

Mỗi cấp độ thụt lề sẽ thêm hai dấu cách ở đầu.

SET @data = '{"Person": {"Name": "Bart", "Age": 10, "Friends": ["Bart", "Milhouse"]}}';
SELECT JSON_PRETTY(@data) Result;

Kết quả:

{
  "Person": {
    "Age": 10,
    "Name": "Bart",
    "Friends": [
      "Bart",
      "Milhouse"
    ]
  }
}

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Gặp sự cố với các hàng khớp trong cơ sở dữ liệu bằng cách sử dụng PDO

  2. MySQL - Hàm ELT () và FILED () để trích xuất vị trí chỉ mục từ danh sách

  3. Có sự khác biệt về hiệu suất THỰC giữa khóa chính INT và VARCHAR không?

  4. Kết nối với Db chết sau> 4 <24 trong chế độ ngủ đông của Spring-boot jpa

  5. Tôi có phải đề phòng việc tiêm SQL nếu tôi sử dụng trình đơn thả xuống không?