首頁 資料庫 mysql教程 MySQL时间日期相关函数使用

MySQL时间日期相关函数使用

Jun 07, 2016 pm 04:24 PM
mysql 使用 函數 應用 資料庫 日期 時間 相關

数据库应用中对日期和时间的操作是非常常用的,MySQL自带了许多很有用的函数,可以帮助我们便捷地实现某些需求。下面我们来介绍一下相关的MySQL日期与实践函数。 获取当前日期: mysql> SELECT curdate();+------------+| curdate() |+------------+| 2010-1

数据库应用中对日期和时间的操作是非常常用的,MySQL自带了许多很有用的函数,可以帮助我们便捷地实现某些需求。下面我们来介绍一下相关的MySQL日期与实践函数。

获取当前日期:

mysql> SELECT curdate();
+------------+
| curdate()  |
+------------+
| 2010-11-16 |
+------------+
1 row in set
登入後複製
mysql> SELECT CURRENT_DATE();
+----------------+
| CURRENT_DATE() |
+----------------+
| 2010-11-16     |
+----------------+
1 row in set
登入後複製

获取当前时间:

mysql> SELECT curtime();
+-----------+
| curtime() |
+-----------+
| 12:48:40  |
+-----------+
1 row in set
登入後複製
mysql> SELECT CURRENT_TIME();
+----------------+
| CURRENT_TIME() |
+----------------+
| 12:49:00       |
+----------------+
1 row in set
登入後複製

获取当前时间日期:

mysql> SELECT now();
+---------------------+
| now()               |
+---------------------+
| 2010-11-16 12:50:39 |
+---------------------+
1 row in set
登入後複製
mysql> SELECT CURRENT_TIMESTAMP();
+---------------------+
| CURRENT_TIMESTAMP() |
+---------------------+
| 2010-11-16 12:51:01 |
+---------------------+
1 row in set
登入後複製

注意:在一个单一询问中,对诸如NOW() 的函数多次访问总是会得到同样的结果。

日期增减:

DATE_ADD(date,INTERVAL expr type)
DATE_SUB(date,INTERVAL expr type)
登入後複製

这些函数执行日期运算。

  • date 是一个 DATETIME 或DATE值,用来指定起始时间。
  • expr 是一个表达式,用来指定从起始日期添加或减去的时间间隔值。 Expr是一个字符串;对于负值的时间间隔,它可以以一个 '-'开头。
  • type 为关键词,它指示了表达式被解释的方式。
  • 关键词INTERVA及 type 分类符均不区分大小写。

MySQL 允许任何expr 格式中的标点分隔符。表中所显示的是建议的 分隔符。若 date 参数是一个 DATE 值,而你的计算只会包括 YEAR、MONTH和DAY部分(即, 没有时间部分), 其结果是一个DATE 值。否则,结果将是一个 DATETIME值。

指定日期1秒后:

mysql> SELECT DATE_ADD('2010-12-31 23:59:59', INTERVAL 1 SECOND);
+----------------------------------------------------+
| DATE_ADD('2010-12-31 23:59:59', INTERVAL 1 SECOND) |
+----------------------------------------------------+
| 2011-01-01 00:00:00                                |
+----------------------------------------------------+
1 row in set
登入後複製

指定日期1天后:

mysql> SELECT DATE_ADD('2010-12-31 23:59:59', INTERVAL 1 DAY);
+-------------------------------------------------+
| DATE_ADD('2010-12-31 23:59:59', INTERVAL 1 DAY) |
+-------------------------------------------------+
| 2011-01-01 23:59:59                             |
+-------------------------------------------------+
1 row in set
登入後複製

指定日期减去10小时:

mysql> SELECT DATE_ADD('2011-01-01 00:00:00', INTERVAL '-1 10' DAY_HOUR);
+------------------------------------------------------------+
| DATE_ADD('2011-01-01 00:00:00', INTERVAL '-1 10' DAY_HOUR) |
+------------------------------------------------------------+
| 2010-12-30 14:00:00                                        |
+------------------------------------------------------------+
1 row in set
登入後複製

指定日期的一个月前:

mysql> SELECT DATE_SUB('2011-01-02', INTERVAL 31 DAY);
+-----------------------------------------+
| DATE_SUB('2011-01-02', INTERVAL 31 DAY) |
+-----------------------------------------+
| 2010-12-02                              |
+-----------------------------------------+
1 row in set
登入後複製

指定日期的前一天:

mysql> SELECT date_add('2011-01-01', INTERVAL -1 DAY);
+-----------------------------------------+
| date_add('2011-01-01', INTERVAL -1 DAY) |
+-----------------------------------------+
| 2010-12-31                              |
+-----------------------------------------+
1 row in set
登入後複製

将日期时间转换成指定格式:

DATE_FORMAT(date,format)

根据format 字符串安排date 值的格式。所有其它字符都被复制到结果中,无需作出解释。注意,'%'字符要求在格式指定符之前。月份和日期说明符的范围从零开始,原因是 MySQL允许存储诸如 '2004-00-00'的不完全日期。

mysql> SELECT DATE_FORMAT( FROM_UNIXTIME( 1290996580 ), '%Y-%m-%d %H:%i:%s' );
+-----------------------------------------------------------------+
| DATE_FORMAT( FROM_UNIXTIME( 1290996580 ), '%Y-%m-%d %H:%i:%s' ) |
+-----------------------------------------------------------------+
| 2010-11-29 10:09:40                                             |
+-----------------------------------------------------------------+
1 row in set
登入後複製
mysql> SELECT DATE_FORMAT( FROM_UNIXTIME( 1290996580 ) , '%Y-%m-%d' );
+---------------------------------------------------------+
| DATE_FORMAT( FROM_UNIXTIME( 1290996580 ) , '%Y-%m-%d' ) |
+---------------------------------------------------------+
| 2010-11-29                                              |
+---------------------------------------------------------+
1 row in set
登入後複製

下面两个函数

FROM_UNIXTIME(unix_timestamp) ,
FROM_UNIXTIME(unix_timestamp,format)
登入後複製

返回'YYYY-MM-DD HH:MM:SS'或YYYYMMDDHHMMSS 格式值的unix_timestamp参数表示,具体格式取决于该函数是否用在字符串中或是数字语境中。

若format 已经给出,则结果的格式是根据format 字符串而定。 format 可以包含同DATE_FORMAT() 函数输入项列表中相同的说明符。

mysql> SELECT FROM_UNIXTIME(875996580);
+--------------------------+
| FROM_UNIXTIME(875996580) |
+--------------------------+
| 1997-10-05 04:23:00      |
+--------------------------+
1 row in set
登入後複製
mysql> SELECT FROM_UNIXTIME(875996580) + 0;
+------------------------------+
| FROM_UNIXTIME(875996580) + 0 |
+------------------------------+
|        19971005042300.000000 |
+------------------------------+
1 row in set
登入後複製

MySql unix时间转换成SQLServer适用的时间格式:

mysql> SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(), '%Y-%m-%d %H:%i:%s');
+------------------------------------------------------+
| FROM_UNIXTIME(UNIX_TIMESTAMP(), '%Y-%m-%d %H:%i:%s') |
+------------------------------------------------------+
| 2010-11-16 19:12:11                                  |
+------------------------------------------------------+
1 row in set
登入後複製
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何優化 PHP 中的 MySQL 查詢效能? 如何優化 PHP 中的 MySQL 查詢效能? Jun 03, 2024 pm 08:11 PM

如何優化 PHP 中的 MySQL 查詢效能?

如何在 PHP 中使用 MySQL 備份和還原? 如何在 PHP 中使用 MySQL 備份和還原? Jun 03, 2024 pm 12:19 PM

如何在 PHP 中使用 MySQL 備份和還原?

如何使用 PHP 插入資料到 MySQL 表? 如何使用 PHP 插入資料到 MySQL 表? Jun 02, 2024 pm 02:26 PM

如何使用 PHP 插入資料到 MySQL 表?

如何修復 MySQL 8.4 上的 mysql_native_password 未載入錯誤 如何修復 MySQL 8.4 上的 mysql_native_password 未載入錯誤 Dec 09, 2024 am 11:42 AM

如何修復 MySQL 8.4 上的 mysql_native_password 未載入錯誤

如何在 PHP 中使用 MySQL 預存程序? 如何在 PHP 中使用 MySQL 預存程序? Jun 02, 2024 pm 02:13 PM

如何在 PHP 中使用 MySQL 預存程序?

如何使用 PHP 建立 MySQL 表? 如何使用 PHP 建立 MySQL 表? Jun 04, 2024 pm 01:57 PM

如何使用 PHP 建立 MySQL 表?

在PHP中使用MySQLi建立資料庫連線的詳盡教學 在PHP中使用MySQLi建立資料庫連線的詳盡教學 Jun 04, 2024 pm 01:42 PM

在PHP中使用MySQLi建立資料庫連線的詳盡教學

iOS 18 新增「已復原」相簿功能 可找回遺失或損壞的照片 iOS 18 新增「已復原」相簿功能 可找回遺失或損壞的照片 Jul 18, 2024 am 05:48 AM

iOS 18 新增「已復原」相簿功能 可找回遺失或損壞的照片

See all articles