sql时间区间查询

select*from表名where(date>='2017-05-01'anddate<='2017-07-30')or(date>='2017-06-01'anddate<='2017-07-30')一个条件只能有一种变体,除非您可以通过多个条件。

SQL中DATEADD和DATEDIFF的用法示例介绍

SQL中的DATEADD和DATEDIFF函数是处理日期计算的强大工具。
它们是从当前日期到本月底。
这个星期一年初它们可以帮助我们计算日期间隔,例如季度的开始和特定时间点(例如午夜)。
使用这些功能的关键是月份,几周,了解时间范围(例如年份)以及如何以“1900-01-01”为基准日期来计算它们。
例如,在计算本月的第一天时,代码是SELECTDATEADD(mm,DATEDIFF(mm,0,getdate()),0)。
该语句首先获取当前日期;然后计算与“1900-01-01”的月份差异,最后将此差异添加到“1900-01-01”以获得本月的第一天。
这周的星期一,我们使用DATEDIFF(wk)和DATEADD(wk):SELECTDATEADD(wk,DATEDIFF(wk,0,getdate()),0)。
在这个例子中,我们找到从当前日期到本周初的周数差异,并将其添加到“1900-01-01”并获取本周的星期一。
了解了这些基本概念后,可以调整时间间隔,比如计算上个月的最后一个日期:SELECTDATEADD(ms,-3,DATEADD(mm,DATEDIFF(mm,0,getdate()),0)))转到末尾通过减去3毫秒可以精确到天;一般来说,DATEADD和DATEDIFF函数提供了改变日期间隔计算的可能性通过调整时间划分和基准日期,可以适应各种日期要求。
掌握这些技术将帮助您编写更准确、更灵活的数据处理程序。