mysql中datetime字段怎么增加一个固定时间

返回在时期P1和P2之间月数,P1和P2应该以格式YYMM或YYYYMM。注意,时期参数P1和P2不是日期值。mysql> select PERIOD_DIFF(9802,199703);-> 11 DATE_ADD(date,INTERVAL expr type)DATE_SUB(date,INTERVAL expr type)ADDDATE(date,INTERVAL expr type)SUBDATE(date,INTERVAL expr type)这些功能执行日...
mysql中datetime字段怎么增加一个固定时间
PERIOD_DIFF(P1,P2)
返回在时期P1和P2之间月数,P1和P2应该以格式YYMM或YYYYMM。注意,时期参数P1和P2不是日期值。
mysql> select PERIOD_DIFF(9802,199703);
-> 11

DATE_ADD(date,INTERVAL expr type)
 
DATE_SUB(date,INTERVAL expr type)
 
ADDDATE(date,INTERVAL expr type)
 
SUBDATE(date,INTERVAL expr type)
这些功能执行日期运算。对于MySQL 3.22,他们是新的。ADDDATE()和SUBDATE()是DATE_ADD()和DATE_SUB()的同义词。
在MySQL 3.23中,你可以使用+和-而不是DATE_ADD()和DATE_SUB()。(见例子)date是一个指定开始日期的
DATETIME或DATE值,expr是指定加到开始日期或从开始日期减去的间隔值一个表达式,expr是一个字符串;它可以以
一个“-”开始表示负间隔。type是一个关键词,指明表达式应该如何被解释。EXTRACT(type FROM date)函数从日期
中返回“type”间隔。下表显示了type和expr参数怎样被关联: type值 含义 期望的expr格式
SECOND 秒 SECONDS
MINUTE 分钟 MINUTES
HOUR 时间 HOURS
DAY 天 DAYS
MONTH 月 MONTHS
YEAR 年 YEARS
MINUTE_SECOND 分钟和秒 "MINUTES:SECONDS"
HOUR_MINUTE 小时和分钟 "HOURS:MINUTES"
DAY_HOUR 天和小时 "DAYS HOURS"
YEAR_MONTH 年和月 "YEARS-MONTHS"
HOUR_SECOND 小时, 分钟, "HOURS:MINUTES:SECONDS"
DAY_MINUTE 天, 小时, 分钟 "DAYS HOURS:MINUTES"
DAY_SECOND 天, 小时, 分钟, 秒 "DAYS HOURS:MINUTES:SECONDS"

MySQL在expr格式中允许任何标点分隔符。表示显示的是建议的分隔符。如果date参数是一个DATE值并且你的计算仅仅
包含YEAR、MONTH和DAY部分(即,没有时间部分),结果是一个DATE值。否则结果是一个DATETIME值。

mysql> SELECT "1997-12-31 23:59:59" + INTERVAL 1 SECOND;
-> 1998-01-01 00:00:00
mysql> SELECT INTERVAL 1 DAY + "1997-12-31";
-> 1998-01-01
mysql> SELECT "1998-01-01" - INTERVAL 1 SECOND;
-> 1997-12-31 23:59:59
mysql> SELECT DATE_ADD("1997-12-31 23:59:59",
INTERVAL 1 SECOND);
-> 1998-01-01 00:00:00
mysql> SELECT DATE_ADD("1997-12-31 23:59:59",
INTERVAL 1 DAY);
-> 1998-01-01 23:59:59
mysql> SELECT DATE_ADD("1997-12-31 23:59:59",
INTERVAL "1:1" MINUTE_SECOND);
-> 1998-01-01 00:01:00
mysql> SELECT DATE_SUB("1998-01-01 00:00:00",
INTERVAL "1 1:1:1" DAY_SECOND);
-> 1997-12-30 22:58:59
mysql> SELECT DATE_ADD("1998-01-01 00:00:00",
INTERVAL "-1 10" DAY_HOUR);
-> 1997-12-30 14:00:00
mysql> SELECT DATE_SUB("1998-01-02", INTERVAL 31 DAY);
-> 1997-12-02
mysql> SELECT EXTRACT(YEAR FROM "1999-07-02");
-> 1999
mysql> SELECT EXTRACT(YEAR_MONTH FROM "1999-07-02 01:02:03");
-> 199907
mysql> SELECT EXTRACT(DAY_MINUTE FROM "1999-07-02 01:02:03");
-> 201022011-08-05
个人有一个比较好的解决办法
在页面向action传递参数的时候用long来表示时间
到action中再在这个时间的基础上加上需要多少分钟的毫秒数
然后转为Date存到数据库里
当然,一般用long表示时间的话,在数据库里页用bigint来表示时间,并不用datetime2011-08-05
查下mysql的函数,应该有处理函数,反正utc时间戳是可以直接加碱处理的。而且jsp本身肯定有函数可以处理,没有的话,可以自己写2011-08-05
JSP中用Java代码改,Java有现成的方法,直接给个参数就OK2011-08-05
mengvlog 阅读 7 次 更新于 2025-07-20 06:36:48 我来答关注问题0
  •  翡希信息咨询 MySQL中DATETIME,DATE和TIMESTAMP类型的区别

    MySQL中DATETIME、DATE和TIMESTAMP类型的区别如下:DATETIME: 定义:日期和时间的组合。 支持范围:’10000101 00:00:00’到’99991231 23:59:59’。 显示格式:MySQL以’YYYYMMDD HH:MM:SS’格式显示DATETIME值。 赋值方式:允许使用字符串或数字为DATETIME列分配值。DATE...

  •  翡希信息咨询 MySQL 时间字段用 int 、 datetime 还是 timestamp?

    在MySQL中选择存储时间字段时,推荐使用DATETIME类型。以下是具体分析和理由:直接支持日期格式:DATETIME:直接存储YYYYMMDD HH:MM:SS格式的时间,无需额外处理。INT:虽然可以作为时间戳使用,但不直接支持日期格式,需要额外的函数转换。显示格式:DATETIME:格式固定且易读,便于直接查看和理解。INT:需要通过...

  •  翡希信息咨询 mysql中日期类型DATETIME和TIMESTAMP的区别

    MySQL中日期类型DATETIME和TIMESTAMP的主要区别如下:存储格式与范围:DATETIME:存储格式为'YYYYMMDD HH:MM:SS',表示具体的日期和时间。其范围从’10000101 00:00:00’到’99991231 23:59:59’。TIMESTAMP:虽然也表现为日期和时间,但它是从1970年1月1日以来的秒数,通常用于记录数据修改或创建的时间...

  •  翡希信息咨询 MySQL 中 datetime 和 timestamp 的区别与选择

    MySQL中datetime和timestamp的主要区别与选择建议如下:一、占用空间和表示形式 datetime:占用8字节,格式为yyyymmdd hh:mm:ss。 timestamp:占用4字节,格式同样为yyyymmdd hh:mm:ss,因此比datetime更为紧凑。二、表示范围 datetime:范围从’10000101 00:00:00.000000’到’99991231 23:...

  •  惠企百科 mysql中datetime怎么转换为时间?

    datetime包含毫秒,要格式化输出,用fffDateTime t = DateTime.Now;Console.WriteLine(t.ToString("yyyy-MM-dd hh:mm:ss fff"));注:mysql里面的datetime类型的精确度是可以到1/ 10 ^ 6 秒的,某些客户端(如navicat for mysql)的显示经常只能看到精确到秒,其实是设计表的时候的配置问题。

檬味博客在线解答立即免费咨询

mySQL相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部