MySQL日期格式以及日期函數(shù)舉例詳解
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相似,但在存儲和使用上有一些差異。
在實際使用中,可以根據(jù)需求選擇合適的日期格式進行存儲和處理。
2. 日期函數(shù)
MySQL提供了豐富的日期函數(shù),用于對日期進行各種操作和計算。下面介紹一些常用的日期函數(shù):
CURDATE()和CURRENT_DATE()
CURDATE()
和CURRENT_DATE()
函數(shù)返回當前日期。它們的使用方式相同,可以直接調(diào)用這兩個函數(shù)獲取當前日期。
SELECT CURDATE(); -- 返回當前日期,例如'2023-07-06' SELECT CURRENT_DATE(); -- 返回當前日期,例如'2023-07-06'
CURTIME()和CURRENT_TIME()
CURTIME()
和CURRENT_TIME()
函數(shù)返回當前時間。它們的使用方式相同,可以直接調(diào)用這兩個函數(shù)獲取當前時間。
SELECT CURTIME(); -- 返回當前時間,例如'13:30:45' SELECT CURRENT_TIME(); -- 返回當前時間,例如'13:30:45'
NOW()和CURRENT_TIMESTAMP()
NOW()
和CURRENT_TIMESTAMP()
函數(shù)返回當前日期和時間。它們的使用方式相同,可以直接調(diào)用這兩個函數(shù)獲取當前日期和時間。
SELECT NOW(); -- 返回當前日期和時間,例如'2023-07-06 13:30:45' SELECT CURRENT_TIMESTAMP(); -- 返回當前日期和時間,例如'2023-07-06 13:30:45'
DATE_FORMAT()
DATE_FORMAT()
函數(shù)用于將日期按照指定的格式進行格式化??梢允褂貌煌母袷交杹肀硎灸辍⒃?、日、小時、分鐘、秒等。
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s'); -- 格式化當前日期和時間,例如'2023-07-06 13:30:45' SELECT DATE_FORMAT(NOW(), '%W, %M %e, %Y'); -- 格式化當前日期,例如'Wednesday, July 6, 2023'
DATE_ADD()和DATE_SUB()
DATE_ADD()
和DATE_SUB()
函數(shù)用于對日期進行加減操作。可以指定要加減的日期部分(年、月、日等)和相應(yīng)的值。
SELECT DATE_ADD(NOW(), INTERVAL 2 DAY); -- 當前日期加2天 SELECT DATE_SUB(NOW(), INTERVAL 1 MONTH); -- 當前日期減1個月
DATEDIFF()
DATEDIFF()
函數(shù)用于計算兩個日期之間的天數(shù)差。
SELECT DATEDIFF('2023-07-10', '2023-07-06'); -- 計算兩個日期之間的天數(shù)差,結(jié)果為4
DATE()
DATE()
函數(shù)用于提取日期部分。
SELECT DATE(NOW()); -- 提取當前日期部分,例如'2023-07-06'
DAYNAME()和MONTHNAME()
DAYNAME()
和MONTHNAME()
函數(shù)用于獲取日期的星期和月份名稱。
SELECT DAYNAME('2023-07-06'); -- 獲取日期的星期名稱,例如'Wednesday' SELECT MONTHNAME('2023-07-06'); -- 獲取日期的月份名稱,例如'July'
3. Java示例代碼
下面是使用Java和MySQL進行日期操作的示例代碼:
import java.sql.*; import java.text.SimpleDateFormat; public class DateExample { public static void main(String[] args) { String url = "jdbc:mysql://localhost:3306/mydatabase"; String username = "root"; String password = "password"; try { // 連接數(shù)據(jù)庫 Connection connection = DriverManager.getConnection(url, username, password); // 獲取當前日期 Statement statement = connection.createStatement(); ResultSet resultSet = statement.executeQuery("SELECT CURDATE()"); if (resultSet.next()) { Date currentDate = resultSet.getDate(1); System.out.println("Current date: " + currentDate); } // 格式化日期 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); String formattedDate = dateFormat.format(new java.util.Date()); System.out.println("Formatted date: " + formattedDate); // 關(guān)閉連接 resultSet.close(); statement.close(); connection.close(); } catch (SQLException e) { e.printStackTrace(); } } }
運行上述示例代碼,您將看到當前日期和格式化日期的輸出結(jié)果。
4. 總結(jié)
本文詳細介紹了MySQL中的日期格式及日期函數(shù)。通過對日期格式的解釋和常用日期函數(shù)的講解,大家應(yīng)該對MySQL中的日期操作有了更深入的了解。
- 日期格式包括DATE、TIME、DATETIME和TIMESTAMP,可以根據(jù)需求選擇合適的格式進行存儲和處理。
- 日期函數(shù)包括CURDATE()、CURRENT_DATE()、CURTIME()、CURRENT_TIME()、NOW()、CURRENT_TIMESTAMP()、DATE_FORMAT()、DATE_ADD()、DATE_SUB()、DATEDIFF()、DATE()、DAYNAME()和MONTHNAME(),可以用于日期的獲取、格式化、計算和比較等操作。
到此這篇關(guān)于MySQL日期格式以及日期函數(shù)的文章就介紹到這了,更多相關(guān)MySQL日期格式及日期函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Mysql日期格式以及內(nèi)置日期函數(shù)用法詳解
- 使用Pandas?實現(xiàn)MySQL日期函數(shù)的解決方法
- mysql日期函數(shù)TO_DAYS()函數(shù)的詳細講解
- MySQL學習之日期函數(shù)的用法詳解
- MySQL日期函數(shù)與時間函數(shù)匯總(MySQL 5.X)
- MySQL日期函數(shù)與日期轉(zhuǎn)換格式化函數(shù)大全
- mysql 獲取當前日期函數(shù)及時間格式化參數(shù)詳解
- 深入mysql YEAR() MONTH() DAYOFMONTH()日期函數(shù)的詳解
- mysql From_unixtime及UNIX_TIMESTAMP及DATE_FORMAT日期函數(shù)
- mysql日期函數(shù)用法大全
相關(guān)文章
MySQL?根據(jù)多字段查詢重復數(shù)據(jù)的示例代碼
本文介紹了如何使用 MySQL 根據(jù)多個字段查詢重復數(shù)據(jù),我們介紹了如何根據(jù)多個字段查詢重復數(shù)據(jù),并提供了相應(yīng)的代碼示例,通過這些方法,我們可以快速準確地找到和處理重復數(shù)據(jù),提高數(shù)據(jù)庫的數(shù)據(jù)質(zhì)量,需要的朋友可以參考下2023-11-11詳解oracle mysql 中的“不等于“ <> != ^=&nbs
oracle中的 != 與 <> 和 ^= 都是不等于,邏輯上沒有區(qū)別而mysql中,<> 和 != 相同,接下來通過本文給大家詳細講解oracle mysql 中的“不等于“ <> != ^= is not,感興趣的朋友一起看看吧2023-04-04