Sql 查询当天、本周、本月记录、上周、上月记录

查询当天:

select * from info where DateDiff(dd,datetime,getdate())=0

查询24小时内:

select * from info where DateDiff(hh,datetime,getDate())<=24

查询当天:

select * from table where DateDiff(dd,datetime,getdate())=0

本月记录 :

SELECT * FROM 表 WHERE datediff(month,[dateadd],getdate())=0

本周记录 :

SELECT * FROM 表 WHERE datediff(week,[dateadd],getdate())=0

上月记录:

SELECT * FROM 表 WHERE datediff(month,[dateadd],getdate())=1

上周记录 :

SELECT * FROM 表 WHERE datediff(week,[dateadd],getdate())=1

当前系统日期、时间

select getdate()

dateadd   在向指定日期加上一段时间的基础上,返回新的 datetime 值
    例如:向日期加上2天

  1. select dateadd(day,2,‘2004-10-15‘)   --返回:2004-10-17 00:00:00.000

datediff 返回跨两个指定日期的日期和时间边界数。

  1. select datediff(day,‘2004-09-01‘,‘2004-09-18‘)    --返回:17

datepart 返回代表指定日期的指定日期部分的整数。

  1. SELECT DATEPART(month, ‘2004-10-15‘)   --返回 10

datename 返回代表指定日期的指定日期部分的字符串

  1. SELECT datename(weekday, ‘2004-10-15‘)   --返回:星期五

原文地址:https://www.cnblogs.com/520lw/p/10640942.html

时间: 2024-11-13 08:25:59

Sql 查询当天、本周、本月记录、上周、上月记录的相关文章

SQL 查询当天,本月,本周的记录

本文转载自Crazy Coder SELECT * FROM 表 WHERE CONVERT(Nvarchar, dateandtime, 111) = CONVERT(Nvarchar, GETDATE(), 111)   ORDER BY dateandtime DESC 本月记录 SELECT * FROM 表 WHERE datediff(month,[dateadd],getdate())=0 本周记录 SELECT * FROM 表 WHERE datediff(week,[date

Sql 查询当天、本周、本月记录

Sql 查询当天.本周.本月记录--查询当天: [sql] view plaincopyprint?select * from info where DateDiff(dd,datetime,getdate())=0 --查询24小时内的: [sql] view plaincopyprint?select * from info where DateDiff(hh,datetime,getDate())<=24 --info为表名,datetime为数据库中的字段值 --查询当天:[sql] v

oracle sql语句取得本周本月本年的数据

[sql] --国内从周一到周日 国外是周日到周六  select to_char(sysdate-1,'D') from dual;--取国内的星期几 去掉减一取国外的星期-- [sql] --取本周时间内的数据  select * from table  where DTIME >=trunc(next_day(sysdate-8,1)+1) and DTIME<=trunc(next_day(sysdate-8,1)+7)+1 ;     select * from table  whe

用sql查询当天,一周,一个月的数据

数据查询,不管在网站还是在系统,都很常见,下文是介绍最常见的以日期查询的语句 select * from ShopOrder where datediff(week,ordTime,getdate()-1)=0   //查询当天日期在一周年的数据 select * from ShopOrder where datediff(day,ordTime,getdate()-1)=0   //查询当天的所有数据 --查询当天: select * from info where DateDiff(dd,d

sql查询当天,一周,一个月数据的语句

--查询当天:  select * from info where DateDiff(dd,datetime,getdate())=0 --查询24小时内的: select * from info where DateDiff(hh,datetime,getDate())<=24 --查询本周记录select * from info where datediff(week,datetime,getdate())=0 --查询本月记录select * from info where datedif

sql查询当天的数据

今天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=0 昨天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=1 7天内的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())<=7 30天内的所有数据:select * from 表名 where DateDiff

Sql查询两个时间段有重叠的记录

这个问题看上去简单,但是想了很久,最后发现,自己的思路有点乱. 下面四条时间段都和最上面那个有重叠的关系,就是这么个意思. 这里是问题的答案: 2个时间: a_start, a_end b_start, b_end 公式: a_start <= b_end and a_end >= b_start

mysql 查询当天、昨天、本周、上周、本月、上月、今年、去年数据

mysql 查询当天数据 mysql查询今天.昨天.7天.近30天.本月.上一月 数据 今天 select * from 表名 where to_days(时间字段名) = to_days(now()); 昨天 SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) = 1 近7天 SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(时间字段名) 查询当

SQL Server 获取本周,本月,本年等时间内记录

datediff(week,zy_time,getdate())=0 //查询本周 datediff(month,zy_time,getdate())=0 //查询本月 本季:select * from table where datediff(qq,C_CALLTIME,getdate())=0 前半年1-6,后半年7-12:select * from table where datepart(mm,C_CALLTIME)/7 = datepart(mm,getdate())/7 1. 当前系