用于将查询结果转换为JavaScript对象的算法或库

时间:2014-03-24 04:55:48

标签: javascript sql object

我有一个简单的数据库架构,父子关系,深度为2到3级。例如:

  • 学校有很多老师
  • 学校有很多部门

我有一个查询,将学校及其教师和部门检索为如下的平面表:

school  teacher  department
CMU     John     Engineering
CMU     Julie    Engineering
CMU     John     Humanities
CMU     Julie    Humanities

我知道有些ORM工具会将这样的结果作为对象返回,但是它们太重了,提供的东西比我需要的多。是否有简单的算法或库将此结果转换为对象的层次结构,例如以JSON格式:

{
    departments: [
        'Engineering',
        'Humanities'
    ],

    teachers: [
        'John',
        'Julie'
    ]        
}

或3级深度关系(当然是不同的查询和不同的结果集):

{
    departments: [
        {
            name: 'Engineering',
            teachers: [
                'John',
                'Julie'
            ]
        },
        {
            name: 'Humanities',
            teachers: [
                'Mike',
                'Mary'
            ]
        }
    ]
}

1 个答案:

答案 0 :(得分:0)

我不了解其他数据库,但postgresql有一些函数直接将查询结果组织成json格式,您可能对this article感兴趣