簡體   English   中英

在 MYSQL 中提取帶有鍵和值的子 JSON

[英]Extract sub JSON with keys and values in MYSQL

我有一個帶有 JSON TYPE 列的表,如下所示:

ID json_info 日期
1. {“Ccclaptop_model”:{“value”:“asus”,“price”:“2122”},“laptop_ram”:{“value”:“6”,“price”:“122”},“laptop_mouse_model”:{ “價值”:“邏輯”,“價格”:“30”},“laptop_keys_model”:{“價值”:“美國”,“價格”:“10”}} 2020-02-02

我想要一個查詢,用他的鍵值提取一個子 JSON,如下所示:

ID json_info 日期
1. {“laptop_mouse_model”:{“value”:“logic”,“price”:“30”},“laptop_keys_model”:{“value”:“USA”,“price”:“10”}} 2020-02-02

我試過 JSON_EXTRACT

    SELECT id,
       JSON_EXTRACT(json_info, '$.laptop_mouse_model', '$.laptop_keys_model' ) AS store_id 
FROM feature_data WHERE date = '2020-02-02';

但只返回一個沒有鍵的 JSON 數組,如下所示:

ID json_info 日期
1. [{“價值”:“邏輯”,“價格”:“30”},{“價值”:“美國”,“價格”:“10”}] 2020-02-02

有人知道是否存在我可以使用的功能嗎?

您可以使用JSON_OBJECT將結果組合為 json,例如:

SELECT id,JSON_OBJECT('laptop_mouse_model',JSON_EXTRACT(json_info, '$.laptop_mouse_model'),'laptop_keys_model',JSON_EXTRACT(json_info, '$.laptop_keys_model')) AS store_id FROM feature_data WHERE date = '2020-02-02';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM