首頁 >資料庫 >mysql教程 >如何使用普通 SQL 指令將 MySQL 結果表轉換為 JSON 陣列?

如何使用普通 SQL 指令將 MySQL 結果表轉換為 JSON 陣列?

Patricia Arquette
Patricia Arquette原創
2024-12-03 11:11:09498瀏覽

How to Convert a MySQL Result Table to a JSON Array Using Plain SQL Commands?

MySQL 使用普通指令將結果表轉換為JSON 陣列

在MySQL 中,可以將結果表轉換為JSON 陣列使用內建函數。考慮以下查詢:

SELECT name, phone FROM person;

傳回以下結果表:

name phone
Jack 12345
John 23455

新解:

利用JSON_ARRAYAGG 和J​​SON實現所需的JSON輸出:

SELECT JSON_ARRAYAGG(JSON_OBJECT('name', name, 'phone', phone)) from Person;

JSON_ARRAYAGG 函數將多個 JSON 物件聚合到一個陣列中,而 JSON_OBJECT 函數則使用指定的鍵值對建立一個物件。

舊解:

或者,您可以使用CONCAT、GROUP_CONCAT 和JSON_OBJECT 函數用於建構JSON 陣列:

SELECT CONCAT(
    '[', 
    GROUP_CONCAT(JSON_OBJECT('name', name, 'phone', phone)),
    ']'
) 
FROM person;

以上是如何使用普通 SQL 指令將 MySQL 結果表轉換為 JSON 陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn