MariaDB
 sql >> Teknologi Basis Data >  >> RDS >> MariaDB

MariaDB JSON_UNQUOTE() Dijelaskan

Di MariaDB, JSON_UNQUOTE() adalah fungsi bawaan yang menghapus tanda kutip dari nilai JSON. Dengan kata lain, ini “menghapus tanda kutip” nilai JSON.

Sintaks

Sintaksnya seperti ini:

JSON_UNQUOTE(val)

Contoh

Berikut ini contoh untuk didemonstrasikan.

SELECT JSON_UNQUOTE('"Eggs"');

Hasil:

+------------------------+
| JSON_UNQUOTE('"Eggs"') |
+------------------------+
| Eggs                   |
+------------------------+

Karakter Kabur

Jika nilai berisi karakter garis miring terbalik (\ ), biasanya diabaikan. Namun, urutan tertentu yang melibatkan garis miring terbalik dapat memiliki arti khusus, dan dapat memengaruhi hasil JSON_UNQUOTE() .

Ini akan tergantung pada apakah mode SQL disetel ke NO_BACKSLASH_ESCAPES . Ketika mode SQL diatur ke NO_BACKSLASH_ESCAPES , ini menonaktifkan penggunaan karakter garis miring terbalik sebagai karakter pelarian dalam string, membuatnya setara dengan karakter biasa.

Jika tidak, urutan berikut akan berlaku:

Urutan pelarian Karakter
\" Kutipan ganda (" )
\b garis miring terbalik
\f Umpan Formulir
\n Baris baru (umpan baris)
\r Kereta pulang
\t Tab
\\ Garis miring terbalik (\ )
\uXXXX UTF-8 byte untuk nilai Unicode XXXX

Contoh:

SELECT JSON_UNQUOTE('Feeling\tGood');

Hasil:

+-------------------------------+
| JSON_UNQUOTE('Feeling\tGood') |
+-------------------------------+
| Feeling	Good                  |
+-------------------------------+

Di sini, saya menggunakan \t urutan untuk menambahkan karakter tab di dalam string.

Jika saya menyetel mode SQL ke NO_BACKSLASH_ESCAPES , urutan tidak memiliki arti khusus, dan urutan literal disertakan dalam output tanpa interpretasi:

SET @@sql_mode = 'NO_BACKSLASH_ESCAPES';

SELECT JSON_UNQUOTE('Feeling\tGood');

Hasil:

+-------------------------------+
| JSON_UNQUOTE('Feeling\tGood') |
+-------------------------------+
| Feeling\tGood                 |
+-------------------------------+

Argumen Null

Jika argumennya adalah NULL , hasilnya adalah NULL :

SELECT JSON_UNQUOTE(null);

Hasil:

+--------------------+
| JSON_UNQUOTE(null) |
+--------------------+
| NULL               |
+--------------------+

Jumlah Parameter Salah

Memanggil JSON_UNQUOTE() tanpa argumen menghasilkan kesalahan:

SELECT JSON_UNQUOTE();

Hasil:

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

Sama halnya jika Anda memberikan terlalu banyak argumen:

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

Hasil:

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

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pengantar Penerapan MySQL Menggunakan Peran yang Mungkin

  2. Bagaimana TO_DAYS() Bekerja di MariaDB

  3. 4 Cara Menemukan Baris yang Mengandung Huruf Kecil di MariaDB

  4. Mengontrol Replication Failover untuk MySQL dan MariaDB Dengan Skrip Sebelum atau Setelah Failover

  5. Apa itu MariaDB TX? Cara Mengelola Fork MySQL MariaDB Baru!