我在 MYSQL 列中收集 JSON 資料。我想在這個 JSON 資料中計算具有相同關鍵字的數字。
示例 JSON 列:
| ID | 柱子 |
|---|---|
| 1 | { "2": { "model": "Test Model" }, "3": { "model": "Test Model" } } |
| 2 | { "4": { "model": "Test Model" }, "2": { "model": "Test Model" } } |
| 3 | { "1": { "model": "Test Model" }, "4": { "model": "Test Model" } } |
| 4 | { "2": { "model": "Test Model" } } |
我想要的輸出:
| 鑰匙 | 數數 |
|---|---|
| 2 | 3 |
| 4 | 2 |
| 3 | 1 |
| 1 | 1 |
我可以使用簡碼輕松做到這一點嗎?
mysql版本:8.0.27
uj5u.com熱心網友回復:
SELECT jsontable.`key`, COUNT(*) `count`
FROM test
CROSS JOIN JSON_TABLE(JSON_KEYS(test.json_value),
'$[*]' COLUMNS (`key` INT PATH '$')) jsontable
GROUP BY jsontable.`key`
https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=717eeeacb3bceb45a2094e46d37c8865
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/406043.html
標籤:
上一篇:用于案例研究的固定側滾動條
下一篇:MySQL將資料合并為一列
