如 字段 detail_data 值 類型:
[{“name”: “技術活動名稱”, “value”: “活動1”}, {“name”: “計划評審時間”, “value”: “2021-03-20”}, {“name”: “項目名稱”, “value”: “修改編輯時的選人問題”}, {“name”: “項目類別”, “value”: “地震勘探”}, {“name”: “成果名稱”, “value”: “成果名稱”}, {“name”: “評審主持人”, “value”: “[“215815092837727976”]”}, {“name”: “工作類別”, “value”: “建設”}, {“name”: “內容”, “value”: “內容”}, {“name”: “表格”, “value”: “1”}, {“name”: “費用合計”, “value”: “102917.1”}, {“name”: “會議通知”, “value”: “通知”}]
我需要把全部的 費用合計 求和統計
{“name”: “費用合計”, “value”: “102917.1”}
SELECT
SUM(
JSON_EXTRACT( detail_data, JSON_UNQUOTE( REPLACE ( JSON_SEARCH( detail_data, 'all', '費用合計', NULL, '$[*].name' ), 'name', 'value' ) ) )
) AS sum
FROM
project_approve_info
WHERE
type = '財務管理-生產專家咨詢';
mysql json字段 某個屬性的值模糊查詢
SELECT
*
FROM
project_approve_info
WHERE
type = '財務管理-生產專家咨詢'
AND JSON_EXTRACT( detail_data,
JSON_UNQUOTE(
REPLACE ( JSON_SEARCH( detail_data, 'all', '費用合計', NULL, '$[*].name' ), 'name', 'value' ) ) ) LIKE "%23%";
value值為json數組格式的字符串,需要與其他json數組合並
SELECT
JSON_MERGE_PRESERVE (
attachment,
JSON_UNQUOTE (
JSON_EXTRACT( detail_data, JSON_UNQUOTE( REPLACE ( JSON_SEARCH( detail_data, 'all', '附件', NULL, '$[*].name' ), 'name', 'value' ) ) )
)
) '附件'
FROM
project_approve_info
WHERE
project_id = 43
AND type = '設計書審查'