qq_54076564 2021-11-24 20:12 采纳率: 0%
浏览 28

LINQPad的学生表中的查询查询

检索全部课程都及格的学生的学号和姓名
检索选修人数最多的课程的课程号和课程名

  • 写回答

2条回答 默认 最新

  • CSDN专家-showbo 2021-11-24 20:59
    关注

    linqpad没用过,linq代码如下,注意自己新建linq to sql实体类

    img

    using System;
    using System.Linq;
    namespace ConsoleApp1
    {
        class Program
        {
            static void Main(string[] args)
            {
                DataClasses1DataContext ctx = new DataClasses1DataContext();
                var rs = ctx.学生表.Where(s => ctx.成绩表.Where(i => !ctx.成绩表.Where(i1 => i1.成绩 < 60).Select(x => x.学生id).Distinct().Contains(i.学生id)).Select(i => i.学生id).Distinct().Contains(s.id));
                foreach (var r in rs) Console.WriteLine(r.姓名+","+r.学号);
    
                var rs1 = ctx.课程表.Where(i => i.id == ctx.成绩表.GroupBy(x => x.课程id).OrderByDescending(x => x.Count()).Select(x => x.Key).First());
    
                foreach (var r in rs1) Console.WriteLine(r.id+","+r.课程名称);
    
                Console.ReadKey();
            }
        }
    }
    
    

    有帮助麻烦点下【采纳该答案】

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 11月24日