编辑
2025-09-22
C#
00

SqlSugar 是一个简单而强大的 .NET ORM(对象关系映射)框架,它支持多种数据库,并提供了丰富的功能来简化数据库操作。在 SqlSugar 中,SqlFunc 是一个非常有用的工具,它提供了一系列的方法来支持复杂的 SQL 函数操作,使得在 LINQ 查询中使用 SQL 函数变得非常简单和直观。

本文将通过一些实际的例子,展示如何在 SqlSugar 中使用 SqlFunc 来处理常见的数据库查询需求。

实体类定义

首先,我们定义一些实体类(Entity),以便在示例中使用。

C#
public class Student { public int Id { get; set; } public string Name { get; set; } public DateTime BirthDate { get; set; } public int ClassId { get; set; } } public class Class { public int Id { get; set; } public string ClassName { get; set; } } public class Order { public int Id { get; set; } public decimal Amount { get; set; } public DateTime OrderDate { get; set; } public string CustomerId { get; set; } }
编辑
2025-09-22
C#
00

在开发复杂的业务系统时,经常会遇到需要处理具有层级结构的数据,例如组织架构、产品分类等。这时,树型递归查询就显得尤为重要。SqlSugar 作为一个轻量级而又功能强大的 ORM 框架,为我们处理这类问题提供了便利。本文将详细介绍如何在 SqlSugar 中实现树型递归查询,并通过具体的例子来加深理解。

实体类定义

首先,我们定义一个简单的实体类来表示具有层级结构的数据。以下是一个表示组织结构的实体类 Organization 的定义:

C#
public class Organization { public int Id { get; set; } public string Name { get; set; } public int ParentId { get; set; } public List<Organization> Children { get; set; } }

在这个实体类中,Id 表示组织的唯一标识,Name 表示组织的名称,ParentId 表示上级组织的 IdChildren 用于存储子组织的列表。

编辑
2025-09-22
C#
00

SqlSugar是一个轻量级的.NET ORM框架,它提供了丰富的功能来简化数据库操作。其中,导航查询是SqlSugar提供的一项强大功能,它允许开发者通过对象的属性来访问关联的数据,从而实现复杂的查询逻辑。本文将通过具体的例子,深入探讨SqlSugar中的导航查询功能。

实体类定义

为了演示导航查询,我们首先定义几个简单的实体类:Student(学生)、Class(班级)和School(学校)。这些实体类之间存在关联关系,具体如下:

  • 一个School可以有多个Class
  • 一个Class可以有多个Student

School 实体类

C#
public class School { [SqlSugar.SugarColumn(IsPrimaryKey =true)] public int Id { get; set; } public string Name { get; set; } [Navigate(NavigateType.OneToMany, nameof(Class.SchoolId))] public List<Class> Classes { get; set; } }
编辑
2025-09-22
C#
00

SqlSugar是一个简单而强大的.NET ORM框架,它提供了丰富的功能来简化数据库操作。子查询是SQL中一个重要的概念,SqlSugar也提供了对子查询的良好支持。在SqlSugar中,子查询可以应用于多种场景,包括但不限于条件筛选、字段选择、连接查询等。本文将通过一系列例子详细介绍SqlSugar中子查询的使用方法。

实体类

Customer实体类

C#
public class Customer { public int Id { get; set; } public string Name { get; set; } public string Email { get; set; } // 可以根据实际需求添加更多属性 }

Order实体类

C#
public class Order { public int Id { get; set; } public int CustomerId { get; set; } public DateTime OrderDate { get; set; } public decimal Amount { get; set; } // 可以根据实际需求添加更多属性 }
编辑
2025-09-22
C#
00

SqlSugar是一个轻量级但功能强大的.NET ORM框架,它提供了丰富的查询功能,包括灵活的分组查询操作。分组查询是数据库操作中常见的需求之一,用于将数据集合按照某个或某些字段进行分组,并对每个组进行聚合运算。在本文中,我们将通过几个例子探讨如何使用SqlSugar进行分组查询。

实体类

Product 实体类

Product类代表商品信息,假设每个商品都有一个唯一的ID、名称、类别ID和价格。

C#
[SugarTable("Product")] public class Product { [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] public int Id { get; set; } public string Name { get; set; } public int CategoryId { get; set; } public decimal Price { get; set; } }