EFcore 6.0 Lambda查询:left join、where、group by、having综合查询

这篇博客介绍了如何在EFcore 6.0中使用Lambda表达式进行复杂的数据库查询,包括LEFT JOIN和INNER JOIN操作。通过示例展示了如何将Lambda查询转换为SQL语句,并特别指出在处理具有联合主键和不同字段名称的表连接时的注意事项。
摘要由CSDN通过智能技术生成

示例表

TableClassinfo

classid classname
1 xx班
2 yy班
3 zz班

TableStudentsInfo
注意:studentno字段拆分成了studentno1和studentno2联合主键。

classid studentNO1 studentNO2 name
1 1 1 张三
2 3 18 李四
2 1 5 王五
3 8 2 小明
3 4 9 小红

TableTestDetail
注意:下表外键字段也拆分成了两个字段,且与上表主键字段名是不同名的,所以lanmbda语句定义这俩表连接时也会有所区别,具体请看下面代码中的语句以及相关注释.

sNO1 sNO2 score testdate
1 1 90 2020-01-02
1 5 91 2020-01-02
1 1 77 2020-02-03
3 18 90 2020-02-03
8 2 65 2020-02-03
1 1 96 2020-03-07
3 18 87 2020-03-07
8 2 70 2020-03-07
4 9 99 2020-03-07

Lambda代码: left join

using (var context = new SchoolContext())
          {
   
          var res = context.TableClassinfo
       //下句翻译成sql:TableClassinfo c left join TableStudentsI
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值