• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

MySQL日期格式和日期函数

武飞扬头像
一叶飘零_sweeeet
帮助1

目录

  1. 日期格式
  2. 日期函数
    • CURDATE()和CURRENT_DATE()
    • CURTIME()和CURRENT_TIME()
    • NOW()和CURRENT_TIMESTAMP()
    • DATE_FORMAT()
    • DATE_ADD()和DATE_SUB()
    • DATEDIFF()
    • DATE()
    • DAYNAME()和MONTHNAME()
  3. Java示例代码
  4. 总结

1. 日期格式

在MySQL中,日期可以使用多种格式进行存储和表示。常见的日期格式包括:

  • DATE:仅包含日期部分,格式为'YYYY-MM-DD',例如'2023-07-06'。
  • TIME:仅包含时间部分,格式为'HH:MM:SS',例如'13:30:45'。
  • DATETIME:包含日期和时间部分,格式为'YYYY-MM-DD HH:MM:SS',例如'2023-07-06 13:30:45'。
  • TIMESTAMP:包含日期和时间部分,格式为'YYYY-MM-DD HH:MM:SS',与DATETIME相似,但在存储和使用上有一些差异。

在实际使用中,可以根据需求选择合适的日期格式进行存储和处理。

2. 日期函数

MySQL提供了丰富的日期函数,用于对日期进行各种操作和计算。下面介绍一些常用的日期函数:

CURDATE()和CURRENT_DATE()

CURDATE()CURRENT_DATE()函数返回当前日期。它们的使用方式相同,可以直接调用这两个函数获取当前日期。

  1.  
    SELECT CURDATE(); -- 返回当前日期,例如'2023-07-06'
  2.  
    SELECT CURRENT_DATE(); -- 返回当前日期,例如'2023-07-06'

CURTIME()和CURRENT_TIME()

CURTIME()CURRENT_TIME()函数返回当前时间。它们的使用方式相同,可以直接调用这两个函数获取当前时间。

  1.  
    SELECT CURTIME(); -- 返回当前时间,例如'13:30:45'
  2.  
    SELECT CURRENT_TIME(); -- 返回当前时间,例如'13:30:45'

NOW()和CURRENT_TIMESTAMP()

NOW()CURRENT_TIMESTAMP()函数返回当前日期和时间。它们的使用方式相同,可以直接调用这两个函数获取当前日期和时间。

  1.  
    SELECT NOW(); -- 返回当前日期和时间,例如'2023-07-06 13:30:45'
  2.  
    SELECT CURRENT_TIMESTAMP(); -- 返回当前日期和时间,例如'2023-07-06 13:30:45'

DATE_FORMAT()

DATE_FORMAT()函数用于将日期按照指定的格式进行格式化。可以使用不同的格式化符号来表示年、月、日、小时、分钟、秒等。

  1.  
    SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s'); -- 格式化当前日期和时间,例如'2023-07-06 13:30:45'
  2.  
    SELECT DATE_FORMAT(NOW(), '%W, %M %e, %Y'); -- 格式化当前日期,例如'Wednesday, July 6, 2023'

DATE_ADD()和DATE_SUB()

DATE_ADD()DATE_SUB()函数用于对日期进行加减操作。可以指定要加减的日期部分(年、月、日等)和相应的值。

  1.  
    SELECT DATE_ADD(NOW(), INTERVAL 2 DAY); -- 当前日期加2
  2.  
    SELECT DATE_SUB(NOW(), INTERVAL 1 MONTH); -- 当前日期减1个月

DATEDIFF()

DATEDIFF()函数用于计算两个日期之间的天数差。

SELECT DATEDIFF('2023-07-10', '2023-07-06'); -- 计算两个日期之间的天数差,结果为4

DATE()

DATE()函数用于提取日期部分。

SELECT DATE(NOW()); -- 提取当前日期部分,例如'2023-07-06'

DAYNAME()和MONTHNAME()

DAYNAME()MONTHNAME()函数用于获取日期的星期和月份名称。

  1.  
    SELECT DAYNAME('2023-07-06'); -- 获取日期的星期名称,例如'Wednesday'
  2.  
    SELECT MONTHNAME('2023-07-06'); -- 获取日期的月份名称,例如'July'

3. Java示例代码

下面是使用Java和MySQL进行日期操作的示例代码:

  1.  
    import java.sql.*;
  2.  
    import java.text.SimpleDateFormat;
  3.  
     
  4.  
    public class DateExample {
  5.  
    public static void main(String[] args) {
  6.  
    String url = "jdbc:mysql://localhost:3306/mydatabase";
  7.  
    String username = "root";
  8.  
    String password = "password";
  9.  
     
  10.  
    try {
  11.  
    // 连接数据库
  12.  
    Connection connection = DriverManager.getConnection(url, username, password);
  13.  
     
  14.  
    // 获取当前日期
  15.  
    Statement statement = connection.createStatement();
  16.  
    ResultSet resultSet = statement.executeQuery("SELECT CURDATE()");
  17.  
    if (resultSet.next()) {
  18.  
    Date currentDate = resultSet.getDate(1);
  19.  
    System.out.println("Current date: " currentDate);
  20.  
    }
  21.  
     
  22.  
    // 格式化日期
  23.  
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
  24.  
    String formattedDate = dateFormat.format(new java.util.Date());
  25.  
    System.out.println("Formatted date: " formattedDate);
  26.  
     
  27.  
    // 关闭连接
  28.  
    resultSet.close();
  29.  
    statement.close();
  30.  
    connection.close();
  31.  
    } catch (SQLException e) {
  32.  
    e.printStackTrace();
  33.  
    }
  34.  
    }
  35.  
    }
学新通

运行上述示例代码,您将看到当前日期和格式化日期的输出结果。

4. 总结

本文详细介绍了MySQL中的日期格式及日期函数。通过对日期格式的解释和常用日期函数的讲解,大家应该对MySQL中的日期操作有了更深入的了解。

  • 日期格式包括DATE、TIME、DATETIME和TIMESTAMP,可以根据需求选择合适的格式进行存储和处理。
  • 日期函数包括CURDATE()、CURRENT_DATE()、CURTIME()、CURRENT_TIME()、NOW()、CURRENT_TIMESTAMP()、DATE_FORMAT()、DATE_ADD()、DATE_SUB()、DATEDIFF()、DATE()、DAYNAME()和MONTHNAME(),可以用于日期的获取、格式化、计算和比较等操作。

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgghaif
系列文章
更多 icon
同类精品
更多 icon
继续加载