【发布时间】:2022-01-26 16:49:09
【问题描述】:
我想在 mysql 中根据我的 date_requested 字段对 JSON 数组进行排序,顺序将是升序的。我能做到吗?
数组是这样的:
SET @nonSorted= '[
{
"id": "119",
"date_end": "2022-01-04 18:30:00",
"occupied": "0",
"date_begin": "2022-01-04 16:00:00",
"idCategory": "2",
"date_requested": "2022-01-01 11:14:39"
},
{
"id": "134",
"date_end": "2022-01-06 11:30:00",
"occupied": "0",
"date_begin": "2022-01-06 08:00:00",
"idCategory": "4",
"date_requested": "2022-01-02 16:15:49"
},
{
"id": "142",
"date_end": "2022-01-09 11:00:00",
"occupied": "1",
"date_begin": "2022-01-09 08:30:00",
"idCategory": "4",
"date_requested": "2022-01-01 18:11:20"
}
]';
希望按字段 date_requested 对数组进行排序,我还尝试了在 stackoverflow 上找到的一些解决方案,但在我的情况下似乎不起作用。输出应该是这样的:
'[{
"id": "119",
"date_end": "2022-01-04 18:30:00",
"occupied": "0",
"date_begin": "2022-01-04 16:00:00",
"idCategory": "2",
"date_requested": "2022-01-01 11:14:39"
},{
"id": "142",
"date_end": "2022-01-09 11:00:00",
"occupied": "1",
"date_begin": "2022-01-09 08:30:00",
"idCategory": "4",
"date_requested": "2022-01-01 18:11:20"
},{
"id": "134",
"date_end": "2022-01-06 11:30:00",
"occupied": "0",
"date_begin": "2022-01-06 08:00:00",
"idCategory": "4",
"date_requested": "2022-01-02 16:15:49"
}
]'
【问题讨论】:
-
什么是精确 MySQL版本?
-
为什么使用 JSON?您有一个数组,其中每个元素都是具有相同字段集的对象。这应该是另一个普通表,有六列。然后 JSON 的所有麻烦都消失了。您可以高效地进行搜索和排序,并且很容易编写查询来执行此操作。