SqlSugar联表查询 内连接 举例
时间: 2023-08-31 10:06:19 浏览: 273
内连接(inner join)是一种常见的联表查询方式,它只返回两个表中都存在数据匹配的行。使用SqlSugar进行内连接查询,可以使用`Queryable.Join`方法,示例代码如下:
假设有两个实体类,分别是`Student`和`Class`,它们之间有一对多的关系,即一个班级有多个学生。`Student`实体类中有一个`ClassId`属性,表示该学生所属的班级。现在要查询每个学生所属的班级名称,可以使用SqlSugar进行内连接查询,示例代码如下:
```csharp
public class Student
{
public int Id { get; set; }
public string Name { get; set; }
public int ClassId { get; set; }
}
public class Class
{
public int Id { get; set; }
public string Name { get; set; }
}
// 内连接查询
var queryable = db.Queryable<Student>().Join<Class>((s, c) => s.ClassId == c.Id)
.Select((s, c) => new
{
StudentName = s.Name,
ClassName = c.Name
});
// 执行查询并输出结果
var result = queryable.ToList();
foreach (var item in result)
{
Console.WriteLine($"学生姓名:{item.StudentName},班级名称:{item.ClassName}");
}
```
在这个示例中,首先使用`Queryable.Join`方法将`Student`和`Class`表连接起来,然后使用`Queryable.Select`方法选择需要查询的列,最终的查询结果是每个学生所属的班级名称。
阅读全文