MySQL将日期添加到日期

Posted

技术标签:

【中文标题】MySQL将日期添加到日期【英文标题】:MySQL add days to a date 【发布时间】:2011-10-19 11:03:02 【问题描述】:

我在 mysql 中有一个表。将 2 天添加到表中的当前日期值的 sql 语句是什么样的?

UPDATE classes 
SET 
date = date + 1
where id = 161

这个值加一秒,我不想更新时间,我想加两天?

【问题讨论】:

Add 30 days for date in db 的可能重复项 Add 30 days for date in db的可能重复 详情博客:sforsuresh.in/date-manipulation-mysql 【参考方案1】:

假设您的字段是 date 类型(或类似类型):

SELECT DATE_ADD(`your_field_name`, INTERVAL 2 DAY) 
FROM `table_name`;

使用您提供的示例,它可能如下所示:

UPDATE classes 
SET `date` = DATE_ADD(`date` , INTERVAL 2 DAY)
WHERE `id` = 161;

这种方法也适用于 datetime

【讨论】:

【参考方案2】:
UPDATE table SET nameofdatefield = ADDDATE(nameofdatefield, 2) WHERE ...

【讨论】:

感谢您提供这种在日期字段中添加天数的替代方法。我一直在寻找一种使用包含天数的存储过程参数来增加日期的方法。不幸的是,DATE_ADD 语法不允许这样做。 请始终在您的代码中发布某种解释或参考或其他内容。纯代码的答案对于教育未来可能拥有或不拥有给定语言的高度知识的研究人员几乎没有什么作用。给予“多一点”总能提高帖子的赚取积分的潜力,它有助于 *** 不仅仅是一个解决方案的集合,而是一个更全面/有用的资源。 如果您只想将天数添加到日期列,请使用 ADDDATE 函数。 w3resource.com/mysql/date-and-time-functions/… SELECT NOW() AS TodaysDate, ADDDATE(NOW(), 5) AS DateAfter5days【参考方案3】:

此查询适用于获取当前日期与其接下来的 3 个日期之间的值

SELECT * FROM tableName
WHERE columName BETWEEN CURDATE() AND DATE_ADD(CURDATE(), INTERVAL 3 DAY)

这最终会为当前日期增加额外 3 天的缓冲时间。

【讨论】:

【参考方案4】:
update tablename set coldate=DATE_ADD(coldate, INTERVAL 2 DAY)

【讨论】:

请始终在您的代码中发布某种解释或参考或其他内容。纯代码的答案对于教育未来可能拥有或不拥有给定语言的高度知识的研究人员几乎没有什么作用。给予“多一点”总能提高您帖子的赚取积分的潜力,它有助于 *** 不仅仅是一个解决方案的集合,而是一个更全面/有用的资源。【参考方案5】:

根据您的需要:

UPDATE classes 
SET `date` = DATE_ADD(`date`, INTERVAL 2 DAY)
WHERE id = 161

【讨论】:

请始终在您的代码中发布某种解释或参考或其他内容。纯代码的答案对于教育未来的研究人员几乎没有什么作用,这些研究人员可能拥有或不拥有给定语言的高度知识。给予“多一点”总能提高帖子的赚取积分的潜力,它有助于 *** 不仅仅是一个解决方案的集合,而是一个更全面/有用的资源。【参考方案6】:
 DATE_ADD(FROM_DATE_HERE, INTERVAL INTERVAL_TIME_HERE DAY) 

调整INTERVAL后会给出日期

例如。

DATE_ADD(NOW(), INTERVAL -1 DAY) for deducting 1 DAY from current Day
DATE_ADD(NOW(), INTERVAL 2 DAY)  for adding 2 Days

你可以用like

UPDATE classes WHERE date=(DATE_ADD(date, INTERVAL 1 DAY)) WHERE id=161

【讨论】:

赞成包含负区间示例。【参考方案7】:

您可以离开 date_add 功能。

UPDATE `table` 
SET `yourdatefield` = `yourdatefield` + INTERVAL 2 DAY
WHERE ...

【讨论】:

【参考方案8】:
SELECT DATE_ADD(CURDATE(), INTERVAL 2 DAY)

【讨论】:

请始终在您的代码中发布某种解释或参考或其他内容。纯代码的答案对于教育未来可能拥有或不拥有给定语言的高度知识的研究人员几乎没有什么作用。给予“多一点”总能提高帖子的赚取积分的潜力,它有助于 *** 不仅仅是一个解决方案的集合,而是一个更全面/有用的资源。【参考方案9】:
SET date = DATE_ADD( fieldname, INTERVAL 2 DAY )

【讨论】:

请始终在您的代码中发布某种解释或参考或其他内容。纯代码的答案对于教育未来的研究人员几乎没有什么作用,这些研究人员可能拥有或不拥有给定语言的高度知识。给予“多一点”总是会提高你的帖子的赚取积分的潜力,它有助于 *** 不仅仅是一个解决方案的集合,而是一个更全面/有用的资源。 我不认为这个问题:“将 2 天添加到表中的当前日期值的 sql 语句是什么?”需要更多解释吗?【参考方案10】:
SELECT ADDDATE(d,INTERVAL 1 DAY)
from table

【讨论】:

以上是关于MySQL将日期添加到日期的主要内容,如果未能解决你的问题,请参考以下文章

使用存储过程将自动日期字段添加到 MYSQL 数据库

while循环添加日期的MYSQL程序

手动添加日期到mysql数据库

如何将索引添加到日期时间的列?

如何从/到日期减去/添加天数?

如何将日期和时间作为列添加到数据库表中? [关闭]