jsp中mysql时间函数计算时间差
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jsp中mysql时间函数计算时间差相关的知识,希望对你有一定的参考价值。
我要利用datediff函数在mysql数据库中中筛选出与当前日期相差7天内的所有记录,求高人给出jsp代码,并做点必要的解释。所用字段可任意起名。如真能帮本人解决问题,可多加分。谢谢!
String sql="select * from news where unix_timestamp(rs.getString(uploadtime)) between ('unix_timestamp(now())'-7*24*60*60) and ('unix_timestamp(now())'+7*24*60*60)";
rs=stmt.executeQuery(sql);这段代码哪里错了?
SELECT * FROM table
WHERE TO_DAYS(NOW()) - TO_DAYS(date_col) <=7 ;
你确定 (r)这个是什么意思啊 你输出你的sql语句在数据库中直接执行下看看报什么错 应该是你的s.getString(uploadtime)这里错了 参考技术A 在你的查询条件中加入:
where `creattime`>=date_sub(curdate(),interval 7 day)
注:creattime是你的表中记录产生的日期或时间, 参考技术B unix_timestamp
求高人介绍MySQL的datediff函数
要求用现在时间和数据库的值做比较,返回时间差。
jsp中的
DATEDIFF() 返回起始时间 expr和结束时间expr2之间的天数。Expr和expr2 为日期或 date-and-time 表达式。计算中只用到这些值的日期部分。
mysql> SELECT DATEDIFF('1997-12-31 23:59:59','1997-12-30');
-> 1
mysql> SELECT DATEDIFF('1997-11-30 23:59:59','1997-12-31');
-> -31
================
当前日期用curdate() 来获取,
======================
不知道你说的时间是指日期还是真正的时间,再给你时间相减的函数.
=========
TIMEDIFF(expr,expr2)
TIMEDIFF() 返回起始时间 expr 和结束时间expr2 之间的时间。 expr 和expr2 为时间或 date-and-time 表达式,两个的类型必须一样。
mysql> SELECT TIMEDIFF('2000:01:01 00:00:00',
-> '2000:01:01 00:00:00.000001');
-> '-00:00:00.000001'
mysql> SELECT TIMEDIFF('1997-12-31 23:59:59.000001',
-> '1997-12-30 01:01:01.000002');
-> '46:58:57.999999'本回答被提问者采纳
以上是关于jsp中mysql时间函数计算时间差的主要内容,如果未能解决你的问题,请参考以下文章