微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

MySQL从json中提取数据

如何解决MySQL从json中提取数据

我有一个这样的查询

SELECT json_extract(Options,'$.yearlyReports') AS yearlyReports 
FROM myTable WHERE ID = 2;

返回这个:

[{"2016": "2346","2017": "925","2018": "3185","2019": "2165","2020": "4351","2021": " 2694","周": "1"},{"2016": "5966","2017": "2655","2018": "7215","2019": "5742","2020": " 10384","2021": "7163","Week": "2"},{"2016": "10880","2017": "5640","2018": "12734","2019": " 10964","2020": "18822","2021": "15183","周": "3"},{"2016": "17336","2017": "9768","2018": " 19304","2019": "17631","2020": "29143","2021": "26375","周": "4"},{"2016": "24896","2017": " 15104","2018": "26045","2019": "25823","2020": "40699","2021": "39852","周": "5"},{"2016": " 33424","2017": "21471","2018": "34102","2019": "35153","2020": "53323","2021": "55149","周": "6" },{"2016": "43333","2017": "28536","2018": "43098","2019": "45614","2020": "66528","2021": "71873","周": "7"},{"2016": "54215","2017": "36784","2018": "52025","2019": "56206","2020": "80813","2021": "89807","Week": "8"},{"2016": "65430","2017": "46135","2018": "61285","2019": "67460","2020 ": "94387","2021": "107958","Week": "9"},{"2016": "77041","2017": "56585","2018": "70620","2019" ": "78271","2020": "107602","2021": "108538","Week": "10"},{"2016": "87405","2017": "66942","2018" ": "79083","2019": "88377","2020": "118665","Week": "11"},{"2016": "97188","2017": "77623","2018" ": "86493","2019": "96688","2020": "129503","Week": "12"},{"2016": "106164","2017": "87388","2018" ": "93183","2019": "104051","2020": "139622","Week": "13"},{"2016": "114061","2017": "96195","2018" ": "99428","2019": "109729","2020": "148609","Week": "14"},{"2016": "121149","2017": "104227","2018" ": "104416","2019": "114962","2020": "156874","Week": "15"},{"2016": "127459","2017": "111720","2018" ": "108989","2019": "119378","2020": "163646","Week": "16"},{"2016": "134403","2017": "119411","2018" ": "112286","2019": "122950","2020": "170834","Week": "17"}]

这个数组中的每个对象都有一个 Week 键,也有年份 2016-2021(有些没有 2021)

我的问题是如何设置格式以便每个键都是一列而数据是行?

更新

我试过了:

json_extract(Options,'$**.Week') as Week

但它返回了这个:

[“1”、“2”、“3”、“4”、“5”、“6”、“7”、“8”、“9”、“10”、“11”、“12” ","13","14","15","16","17"]

一旦我弄清楚如何将这些项目作为自己的行,我应该能够为其他人弄清楚。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。