如何计算MySQL中日期相差的年月周日数?

更新于
2026-10-11 09:18:25
2阅读来源:SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计302个文字,预计阅读时间需要2分钟。

如何计算MySQL中日期相差的年月周日数?

sql

1.差异年数: SELECT TIMESTAMPDIFF(YEAR, DATE_ADD(NOW(), INTERVAL -400 DAY), NOW()) AS 差异年数;

2.差异月数: SELECT TIMESTAMPDIFF(MONTH, DATE_ADD(NOW(), INTERVAL -400 DAY), NOW()) AS 差异月数;

如何计算MySQL中日期相差的年月周日数?

1、相差年数

  1. SELECT
  2. NOW() 当前日期,
  3. DATE_ADD(NOW(), INTERVAL - 400 DAY) 历史日期,
  4. TIMESTAMPDIFF(
  5. YEAR,
  6. DATE_ADD(NOW(), INTERVAL - 400 DAY),
  7. NOW()
  8. ) AS 相差年;

2、相差月数

  1. SELECT
  2. NOW() 当前日期,
  3. DATE_ADD(NOW(), INTERVAL - 400 DAY) 历史日期,
  4. TIMESTAMPDIFF(
  5. MONTH,
  6. DATE_ADD(NOW(), INTERVAL - 400 DAY),
  7. NOW()
  8. ) AS 相差月;

3、相差周数

  1. SELECT
  2. NOW() 当前日期,
  3. DATE_ADD(NOW(), INTERVAL - 400 DAY) 历史日期,
  4. TIMESTAMPDIFF(
  5. WEEK,
  6. DATE_ADD(NOW(), INTERVAL - 400 DAY),
  7. NOW()
  8. ) AS 相差周;

4、相差天数

整理了一下三种方式:

  1. SELECT
  2. NOW() 当前日期,
  3. DATE_ADD(NOW(), INTERVAL - 400 DAY) 历史日期,
  4. TIMESTAMPDIFF(
  5. DAY,
  6. DATE_ADD(NOW(), INTERVAL - 400 DAY),
  7. NOW()
  8. ) AS 相差日;
  9. SELECT
  10. TO_DAYS('2018-09-10') - TO_DAYS('2017-09-01') AS 相差天数;
  11. SELECT
  12. DATEDIFF(NOW(), '2018-09-01') AS 相差天数;

本文共计302个文字,预计阅读时间需要2分钟。

如何计算MySQL中日期相差的年月周日数?

sql

1.差异年数: SELECT TIMESTAMPDIFF(YEAR, DATE_ADD(NOW(), INTERVAL -400 DAY), NOW()) AS 差异年数;

2.差异月数: SELECT TIMESTAMPDIFF(MONTH, DATE_ADD(NOW(), INTERVAL -400 DAY), NOW()) AS 差异月数;

如何计算MySQL中日期相差的年月周日数?

1、相差年数

  1. SELECT
  2. NOW() 当前日期,
  3. DATE_ADD(NOW(), INTERVAL - 400 DAY) 历史日期,
  4. TIMESTAMPDIFF(
  5. YEAR,
  6. DATE_ADD(NOW(), INTERVAL - 400 DAY),
  7. NOW()
  8. ) AS 相差年;

2、相差月数

  1. SELECT
  2. NOW() 当前日期,
  3. DATE_ADD(NOW(), INTERVAL - 400 DAY) 历史日期,
  4. TIMESTAMPDIFF(
  5. MONTH,
  6. DATE_ADD(NOW(), INTERVAL - 400 DAY),
  7. NOW()
  8. ) AS 相差月;

3、相差周数

  1. SELECT
  2. NOW() 当前日期,
  3. DATE_ADD(NOW(), INTERVAL - 400 DAY) 历史日期,
  4. TIMESTAMPDIFF(
  5. WEEK,
  6. DATE_ADD(NOW(), INTERVAL - 400 DAY),
  7. NOW()
  8. ) AS 相差周;

4、相差天数

整理了一下三种方式:

  1. SELECT
  2. NOW() 当前日期,
  3. DATE_ADD(NOW(), INTERVAL - 400 DAY) 历史日期,
  4. TIMESTAMPDIFF(
  5. DAY,
  6. DATE_ADD(NOW(), INTERVAL - 400 DAY),
  7. NOW()
  8. ) AS 相差日;
  9. SELECT
  10. TO_DAYS('2018-09-10') - TO_DAYS('2017-09-01') AS 相差天数;
  11. SELECT
  12. DATEDIFF(NOW(), '2018-09-01') AS 相差天数;