查詢 MySQL 以取得 JSON 輸出
將結果表轉換為 JSON 陣列是資料運算與交換的有用功能。在 MySQL 中,這可以透過內建函數和運算符的組合來實現。
單一 JSON 陣列的簡單查詢
從結果表,可以使用 JSON_ARRAYAGG 函數。此函數聚合指定列中的值並傳回 JSON 陣列。
例如,若要使用普通MySQL 指令將下列結果表:
| name | phone | | Jack | 12345 | | John | 23455 |
轉換為JSON 數組,請執行下列結果表:
SELECT JSON_ARRAYAGG(JSON_OBJECT('name', name, 'phone', phone)) FROM person;
此查詢將產生以下JSON array:
[ { "name": "Jack", "phone": 12345 }, { "name": "John", "phone": 23455 } ]
自訂JSON 陣列
要修改 JSON 陣列的結構或內容,可以使用其他運算子和函數。例如,GROUP_CONCAT 函數可用來將多行連接成一個字串。
考慮以下查詢作為替代解決方案:
SELECT CONCAT('[', GROUP_CONCAT(JSON_OBJECT('name', name, 'phone', phone)), ']') FROM person;
此查詢將產生與前面的範例相同的 JSON 陣列。然而,它允許更靈活地自訂數組結構,例如包含附加元素或格式選項。
結論
這些 MySQL 指令提供了簡單且將結果表轉換為 JSON 陣列的有效方法。無論您需要簡單的陣列結構還是自訂輸出,都有一些選項可以滿足您的特定需求,而無需使用外部語言或工具。
以上是如何將 MySQL 結果表轉換為 JSON 陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!