SQL语句查询最近几年和几月的数据

select DateAdd(Month,-3,getdate()) –返回一个时间,根据这个时间点去查询想要的数据即可

–DateAdd函数的详细说明:

–DateAdd(interval, number, date)

–interval 必选。字符串表达式,表示要添加的时间间隔。

–yyyy 年

–q 季度

–y 一年的日数

–w 一周的日数

–ww 周

–h 小时

–n 分钟

–number 必选,数值表达式。

–表示要添加的时间间隔的个数。数值表达式可以是正数(得到未来的日期)或负数(得到过去的日期)。

–date 必选。标识查询时的对比时间,getdate()在SQL中说明是现在的时间 。

Select DateAdd(Month,-3,getdate()) –以当前时间为准,返回三个月之前的一个时间点

Select DateAdd(yyyy,-3,getdate()) –以当前时间为准,返回三年之前的一个时间点

Select DateAdd(Month,3,getdate()) –以当前时间为准,返回三个月之后的一个时间点

MySql:
mysql 昨天 一周前 一月前 一年前的数据 这里主要用到了DATE_SUB,

复制代码 代码如下:

SELECT * FROM yh_content
where inputtime>DATE_SUB(CURDATE(), INTERVAL 1 DAY)
where inputtime>DATE_SUB(CURDATE(), INTERVAL 1 WEEK)
where inputtime>DATE_SUB(CURDATE(), INTERVAL 1 MONTH)
where inputtime>DATE_SUB(CURDATE(), INTERVAL 1 YEAR)
注意:如果数据库中时间以UNIX时间戳的形式存放的话,在时间对比上需要更改为统一格式:

DATE_SUB()返回的是格式化后的时间:2014-05-17

需要用UNIX_TIMESTAMP()转化为UNIX时间戳形式对比:

复制代码 代码如下:

where inputtime>UNIX_TIMESTAMP(DATE_SUB(CURDATE(), INTERVAL 1 DAY))
where inputtime>UNIX_TIMESTAMP(DATE_SUB(CURDATE(), INTERVAL 1 WEEK))
where inputtime>UNIX_TIMESTAMP(DATE_SUB(CURDATE(), INTERVAL 1 MONTH))
where inputtime>UNIX_TIMESTAMP(DATE_SUB(CURDATE(), INTERVAL 1 YEAR))
详细请查看MySql时间函数:DATE_SUB、DATE_ADD、UNIX_TIMESTAMP等函数的用法

SQL语句查询最近几年和几月的数据select DateAdd(Month,-3,getdate()) –返回一个时间,根据这个时间点去查询想要的数据即可–DateAdd函数的详细说明:–DateAdd(interval, number, date)–interval 必选。字符串表达式,表示要添加的时间间隔。–yyyy 年–q 季度–m 月–y 一年的日数–d 日–
如:获得 2015-03-01 日的 7天的日期 : 代码如下: select date_sub(‘2015-03-01’,interval 7 day) from rs_pay_data; 输出: 2015-02-22 您可能感兴趣的文章: Mysql 根据时间 查询 日期的优化技巧 mysql 获取昨天日期、今天日期、明天日期以及 一个小时和后一个小时的时间解析 MySQL 中存储时间日期类型的选择问题JDBC中使用Java8的日期LocalDate和LocalDateTime操作 mysql 、postgre sql MySQL 获得当 日期时间 函数浅谈M
select * from 表名 where to_days(时间字段名) = to_days(now()); to_days函数:返回从0000年(公元1年)至当 日期的总天数。 SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) – TO_DAYS( 时间字段名) <= 1 SELECT AVG(column) FROM tb_name 该 SQL 语法用于统计某一数值类型字段的平均数,AVG() 内不能是多个字段,字符串等类型虽然可以执行,但无意义。 SELECT AVG(uid) FROM user 得到 查询 结果: 2.5000 当然在此统计 uid 的平均数是无实际生产意义的,只是为了演示 AVG() 语法的用法。 统计 数据 之和 SELECT SUM() FROM 语法用于从 数据 表中统计 数据 之和。 SELECT SUM(colum 可以使用以下 SQL 语句 查询 七天 的所有 数据 : SELECT * FROM table_name WHERE date_column <= DATE_SUB(NOW(), INTERVAL 7 DAY); 其中,table_name 是您要 查询 的表名,date_column 是您要 查询 的日期列名。这条 SQL 语句会返回七天 的所有 数据 。 希望能够帮到您!