2024年4月1日发(作者:)

SQL Server 是微软推出的一款关系数据库管理系统,被广泛应用于企

业级数据库管理。本文将介绍在 SQL Server 中如何写查询语句来筛选

小于 2023 年 1 月 1 日的日期数据。

一、使用 T-SQL 中的 WHERE 子句

在 SQL Server 中,我们可以使用 T-SQL 语言编写查询语句来筛选符

合条件的数据。为了筛选小于 2023 年 1 月 1 日的日期数据,我们可

以使用 WHERE 子句配合比较运算符来实现。

```sql

SELECT *

FROM 表名

WHERE 日期列 < '2023-01-01';

```

在以上示例中,我们通过 SELECT 语句选取指定表中的所有列,并通

过 WHERE 子句筛选出日期列(假设为“日期列”)中小于 2023 年

1 月 1 日的数据。

二、使用 T-SQL 中的 DATEADD 函数和 GETDATE 函数

除了使用比较运算符来筛选日期数据外,我们还可以使用 T-SQL 中的

内置函数来实现。DATEADD 函数可以在现有日期的基础上添加或减

去指定的时间间隔,而 GETDATE 函数可以获取当前系统日期和时间。

```sql

SELECT *

FROM 表名

WHERE 日期列 < DATEADD(YEAR, -3, GETDATE());

```

在以上示例中,我们通过 SELECT 语句选取指定表中的所有列,并通

过 WHERE 子句筛选出日期列(假设为“日期列”)中小于 2023 年

1 月 1 日的数据。我们使用了 DATEADD 函数来将当前系统日期减去

3 年,然后与日期列进行比较,从而实现筛选。

三、使用 T-SQL 中的 DATEFROMPARTS 函数

SQL Server 2012 版本及以上提供了 DATEFROMPARTS 函数,该函

数可以根据指定的年、月和日参数构造一个日期。

```sql

SELECT *

FROM 表名

WHERE 日期列 < DATEFROMPARTS(2023, 1, 1);