从C#中的SQLServer查询日期

本文关键字:查询 日期 SQLServer 中的 | 更新日期: 2023-09-27 18:25:24

我正在构建一个web应用程序,该应用程序将显示存储在SQL Server 2008数据库中的人员列表即将到来的生日。我不知道如何查询数据库中今天日期后30天内的所有记录。

到目前为止,我拥有的是:

using (HumanResourcesDB db = newH umanResourcesDB(ConfigurationManager.ConnectionStrings["HumanResourcesDB"].ConnectionString))
            {
                DateTime todaysDate = DateTime.Now;
                List<Employee> record =
                (from tab in db.Employees
                 where tab.Birthday between DateTime.Now and todaysDate.AddDays(30) 
                 select tab).ToList();
                this.grdBirthdays.DataSource = record;
                this.grdBirthdays.DataBind();
            }

当然,"介于"answers"和"不起作用,这是我需要填写的。我在网上搜索了一段时间,但没有用。有什么帮助吗?

从C#中的SQLServer查询日期

只需使用大于和小于

using (HumanResourcesDB db = newHumanResourcesDB(ConfigurationManager
            .ConnectionStrings["HumanResourcesDB"].ConnectionString))
{
    List<Employee> record = (from tab in db.Employees
     where tab.Birthday >= DateTime.Today
     && tab.Birthday < DateTime.Today.AddDays(31)
     select tab).ToList();
    this.grdBirthdays.DataSource = record;
    this.grdBirthdays.DataBind();
}

此外,我还应该提到,我使用了DateTime.Tayday而不是DateTime.现在,因为今天表示一天的开始时间为00:00:00.000。如果某人的生日设置为今天00:00:00.000,并且您使用了DateTime。现在(假设是早上8:00)。生日将不包括在此范围内,因为它是在"现在"之前考虑的。