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

MariaDB JSON_QUOTE () Giải thích

Trong MariaDB, JSON_QUOTE() là một hàm tích hợp tạo ra một ký tự chuỗi JSON hợp lệ có thể được đưa vào tài liệu JSON.

Nó bao bọc chuỗi bằng các ký tự dấu ngoặc kép và thoát khỏi các dấu ngoặc kép bên trong và các ký tự đặc biệt khác, trả về một chuỗi utf8mb4.

Cú pháp

Cú pháp như sau:

JSON_QUOTE(json_value)

Ví dụ

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

SELECT JSON_QUOTE('Small') AS 'Result';

Kết quả:

+---------+
| Result  |
+---------+
| "Small" |
+---------+

Ký tự thoát

Ngoài việc đặt chuỗi trong dấu ngoặc kép, JSON_QUOTE() cũng thoát khỏi dấu ngoặc kép bên trong và các ký tự đặc biệt khác.

Ví dụ:

SELECT JSON_QUOTE('By "small", she meant "tiny"') AS 'Result';

Kết quả:

+------------------------------------+
| Result                             |
+------------------------------------+
| "By \"small\", she meant \"tiny\"" |
+------------------------------------+

Trong trường hợp này, chuỗi ban đầu chứa dấu ngoặc kép và do đó chuỗi kết quả thoát khỏi mỗi dấu ngoặc kép bằng dấu gạch chéo ngược.

Nếu dấu ngoặc kép không được thoát, chúng sẽ cản trở các dấu ngoặc kép bên ngoài và vô tình kết thúc chuỗi sớm.

Đối tượng JSON

Dưới đây là một ví dụ về trích dẫn biểu diễn chuỗi của một đối tượng JSON:

SELECT JSON_QUOTE('{ "name": "Brandy"}');

Kết quả:

+-----------------------------------+
| JSON_QUOTE('{ "name": "Brandy"}') |
+-----------------------------------+
| "{ \"name\": \"Brandy\"}"         |
+-----------------------------------+

Mảng

Dưới đây là một ví dụ về trích dẫn biểu diễn chuỗi của một mảng:

SELECT JSON_QUOTE('[ "Small", "Medium", "Large" ]');

Kết quả:

+----------------------------------------------+
| JSON_QUOTE('[ "Small", "Medium", "Large" ]') |
+----------------------------------------------+
| "[ \"Small\", \"Medium\", \"Large\" ]"       |
+----------------------------------------------+

Số

Chuyển một số trả về NULL :

SELECT JSON_QUOTE(10) AS 'Result';

Kết quả:

+--------+
| Result |
+--------+
| NULL   |
+--------+

Số sẽ cần được cung cấp dưới dạng một chuỗi. Sau đó, nó sẽ được trả về dưới dạng một chuỗi được trích dẫn.

Ví dụ:

SELECT JSON_QUOTE('10') AS 'Result';

Kết quả:

+--------+
| Result |
+--------+
| "10"   |
+--------+

Đối số rỗng

Nếu đối số là NULL , kết quả là NULL :

SELECT JSON_QUOTE(null);

Kết quả:

+------------------+
| JSON_QUOTE(null) |
+------------------+
| NULL             |
+------------------+

Đếm tham số không chính xác

Đang gọi JSON_QUOTE() không có đối số dẫn đến lỗi:

SELECT JSON_QUOTE();

Kết quả:

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

Điều này cũng tương tự khi bạn cung cấp quá nhiều đối số:

SELECT JSON_QUOTE('a', 'b');

Kết quả:

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

Các ví dụ khác

MariaDB JSON_QUOTE() hoạt động giống như hàm MySQL cùng tên. Xem JSON_QUOTE() - Cách thoát các ký tự trong chuỗi được sử dụng làm Giá trị JSON trong MySQL để biết thêm ví dụ.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Quản lý khóa SSL và mã hóa dữ liệu MySQL khi chuyển tuyến

  2. Query Outlier là gì và Cách khắc phục

  3. Sao lưu cơ sở dữ liệu - So sánh MariaDB Mariabackup và Percona Xtrabackup

  4. Cách RTRIM_ORACLE () hoạt động trong MariaDB

  5. Đơn giản hóa việc quản lý tài khoản người dùng với MariaDB MaxScale 2.2 và MariaDB Server 10.3