多表+聚合可以实现吗?sqlsugar 返回

求助
5 158
该叫什么 发布于5天前
悬赏:0 飞吻

假设A表是班级表。有班级名,班级ID。
B表是学生表。有班级ID,学生ID,学生名。
最终想查询出这样一个数据

[

    {

        "classId": 1,

        "className": "七班",

        "detail": [

            {

                "studentId": 101,

                "studentName": "张三"

            },

            {

                "studentId": 102,

                "studentName": "李四"

            }

        ]

    },

    {

        "classId": 3,

        "className": "二班",

        "detail": [

            {

                "studentId": 521,

                "studentName": "王五"

            },

            {

                "studentId": 518,

                "studentName": "赵六"

            }

        ]

    }

]

可以吗?应该如何去写?

我现在是这么写的:

var list = db.Queryable<Class, Student>((C, S) => new object[] {

           JoinType.Left,C.Id==S.ClassId}

            ).Where((C, S) => C.Status == 1 &&  S.Status == 1)

            .Select((C, S) => new { C, S }).GroupBy(a => new { a.C }).Select(a => new { a.C, a });

还能优化下吗?

热忱回答5

版块

学习文档

最新会员

发布达人

回贴达人