在我们的系统中,我们有 11 个条件(id 1..11)
我们在 MySQL 5.6 中有一个表,在这个表中有一个包含 JSon 对象的文本列:
条件列示例:
[
{
"important": false,
"paramsJson": {
"items": [
{
"text": "asd"
},
{
"text": "fasf"
},
]
},
"criteria": 1
},
{
"important": true,
"paramsJson": {
"A": "X",
"B": "Y",
"C": 2
},
"criteria": 11
},
{
"important": false,
"paramsJson": {
"ASD": true,
"WERT": true,
},
"criteria": 10
}
]
格式首先是“important”属性,然后是可以包含复杂对象的“paramsJson”,最后是“criteria”id。 我们最多可以按任何顺序拥有所有 11 个标准。
现在我想为每个条件创建一个包含重要列的 View 所以我们将有 11 列 important1, ..., important11。每列可以为 null/true/false。
在上面的 json 示例中,条目将具有 important1=false、important10=false 和 important11=true(其余为空)。
非常感谢您提供有关如何从条件列中提取重要属性并将其附加到后面的标准 ID 的建议。
谢谢
最佳答案
你可以试试 MySQL JSON UDFs ,其中包含一个 JSON_EXTRACT()
函数,您可以使用该函数从存储在 MySQL 中的字符串中提取 JSON 对象和元素。您可能想阅读我的 blog post有关安装 UDF 的说明。最新版本可以下载here .
如果升级到 MySQL 5.7,则可以使用 native JSON functions在您看来,您还可以选择添加 generated columns如果需要,可以添加到您的表中以公开提取的 JSON 值。
关于mysql - 基于 2 个 json 字段创建 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42372658/