Linq实现Left join
开发 后端
这里介绍linq实现Left join,students 表中有 字段 No,Name.book 表中有 bookName,borroeStudentNo(借书人的编号)现在要得到所有书籍信息,包括书的借阅人的信息。这里就需要left join。

本文向大家介绍linq实现Left join,可能好多人还不了解Left join,没有关系,看完本文你肯定有不少收获,希望本文能教会你更多东西。

在linq中没有 left join,所以当希望用到时,会比较范难。以下是linq实现Left join的方法。

students 表中有 字段 No,Name.book 表中有 bookName,borroeStudentNo(借书人的编号)现在要得到所有书籍信息,包括书的借阅人的信息。这里就需要left join。

  1. var sqlresult = from b in book  
  2. joins in students on b.borroeStudentNoequalss.No intobs  
  3. from bb in bs.DefaultIfEmpty()  
  4. select new  
  5. {  
  6. b.bookName,  
  7. s.No,  
  8. s.Name  
  9. }; 

***linq实现Left join

最近有发现了个问题,当查询源是两个List的时候,上面的做法会在当右边的结果为空的时候报错。也就是上面的书的借阅人为空的时候。强调:查询源是两个List的时候,而不是数据表

更改为:

  1. select new  
  2. {  
  3. b.bookName,  
  4. SNo = s==null?"":s.No,  
  5. SName = s==null?"":s.Name  
  6. }; 

【编辑推荐】

  1. LINQ Customers类概括
  2. LINQ查询操作全面分析
  3. LINQ to SQL的Table剖析
  4. Linq数据分组全面描述
  5. LINQ查询基础概括
责任编辑:佚名 来源: IT168

同话题下的热门内容

Python教程:删除列表中某个元素的三种方法用 Python 机器学习预测黄金价格Rust VS Python:为什么越来越流行,取代榜一Python?Python 为什么不设计 Do-while 循环结构?为什么要开发 Go 这门新语言?六个实例,八段代码,详解Python中的for循环你可能不知道但却很有用的 Java 特性抽丝剥茧,深入剖析 Python 如何实现变量交换!

编辑推荐

使用Kotlin做开发一个月后的感想面试官问你什么是消息队列?把这篇甩给他!五大自动化测试的Python框架图文详解两种算法:深度优先遍历(DFS)和广度优先遍历(BFS)【教程】终于有人把Java内存模型说清楚了!
我收藏的内容
点赞
收藏

51CTO技术栈视频号