从sqlite表构建JSON文档

时间:2018-06-22 15:42:51

标签: json sqlite

我一直在寻找SQLite数据库的JSON1扩展,它是一种潜在的工具,可用于根据表值的结果来组成JSON文档。

我从SQLite数据库中得到了一个类似于以下内容的结果集:

CLASS|INSTANCE|PROPERTY|FROM|TO
ABC|12345|COLOR|RED|
ABC|12345|COLOR|GREEN|
ABC|12345|WEIGHT|1|10
ABC|56789|COLOR|BLUE|
ABC|56789|HEIGHT|4.5|6.2
DEF|2345|NAME|YOMOMMA|

我一直试图根据这些数据制作一个JSON文档,如下所示:

{
    "ABC": {
        "12345": {
            "COLOR": [
                { "from": "RED", "to": "" },
                { "from": "GREEN", "to": ""}
            ],
            "WEIGHT": [
                { "from": "1", "to": "10" }
            ]
        },
        "56789": {
            "COLOR": [
                { "from": "BLUE", "to": "" }
            ],
            "HEIGHT": [
                { "from": "4.5", "to": "6.2" }
            ]
        }
    },
    "DEF": {
        "2345": {
            "NAME": [
                { "from": "YOMOMMA", "to": "" }
            ]
        }
    }
}

我一直在尝试获取JSON1函数来帮助我解决此问题,但似乎它们实际上并不真正支持多层JSON格式(或者至少不是我所能看到的)。如果将结果集按查询分组,则可以将属性很好地转换为JSON数组,但是当我尝试将其转换为下一个级别时,所有JSON都将被转义(如果存在, json_raw()函数,但我想实现它会很困难。)

使用SQLite / JSON1是否可以(相对)轻松地做到这一点?与使用JSON1相比,有没有其他/更好的方法来创建我的文档,还是我只需要为此编写代码?

0 个答案:

没有答案