最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL sysdate()函數(shù)的具體使用

 更新時間:2023年07月17日 11:19:20   作者:yiibai  
本文主要介紹了MySQL sysdate()函數(shù)的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

在本教程中,您將了解MySQL SYSDATE()函數(shù)及其注意事項。

MySQL SYSDATE函數(shù)介紹下面說明了SYSDATE()函數(shù)的語法:

SYSDATE(fsp);

如果函數(shù)用于字符串上下文或YYYYMMDDHHMMSS格式,則SYSDATE()函數(shù)將返回當(dāng)前日期時間,格式為“YYYY-MM-DD HH:MM:SS”的值,以防在函數(shù)用于數(shù)字上下文。
SYSDATE()函數(shù)接受一個可選參數(shù)fsp,它確定結(jié)果是否應(yīng)該包含從0到6的小數(shù)秒精度。

請參見以下示例 - 

mysql> SELECT SYSDATE();
+---------------------+
| SYSDATE()           |
+---------------------+
| 2017-08-10 20:43:16 |
+---------------------+
1 row in set

如果您傳遞fsp參數(shù),則結(jié)果將包括小數(shù)秒精度,如以下示例所示:

mysql> SELECT SYSDATE(3);
+-------------------------+
| SYSDATE(3)              |
+-------------------------+
| 2017-08-10 20:43:46.985 |
+-------------------------+
1 row in set

SYSDATE 與 NOW 比較

請考慮以下示例 - 

mysql> SELECT SYSDATE(), NOW();
+---------------------+---------------------+
| SYSDATE()           | NOW()               |
+---------------------+---------------------+
| 2017-08-10 20:44:38 | 2017-08-10 20:44:38 |
+---------------------+---------------------+
1 row in set

似乎SYSDATE()和NOW()函數(shù)都返回一個相同的值,它是執(zhí)行語句時當(dāng)前日期和時間。

然而,SYSDATE()函數(shù)實際上返回執(zhí)行時的時間,而NOW()函數(shù)返回一個常量時間,該語句開始執(zhí)行。

請參閱以下查詢:

mysql> SELECT NOW(), SLEEP(5), NOW();
+---------------------+----------+---------------------+
| NOW()               | SLEEP(5) | NOW()               |
+---------------------+----------+---------------------+
| 2017-08-10 20:46:51 |        0 | 2017-08-10 20:46:51 |
+---------------------+----------+---------------------+
1 row in set

在這個例子中,我們使用SLEEP()函數(shù)暫停查詢5秒。 在同一個語句中,NOW()函數(shù)總是返回一個常量,它是語句開始的時間。

我們將NOW()函數(shù)更改為SYSDATE()函數(shù):

mysql>  SELECT SYSDATE(), SLEEP(5), SYSDATE();
+---------------------+----------+---------------------+
| SYSDATE()           | SLEEP(5) | SYSDATE()           |
+---------------------+----------+---------------------+
| 2017-08-10 20:48:14 |        0 | 2017-08-10 20:48:19 |
+---------------------+----------+---------------------+
1 row in set

在同一個語句中,SYSDATE()函數(shù)返回反映SYSDATE()函數(shù)執(zhí)行時間的不同時間值。

因為SYSDATE()函數(shù)是非確定性的,索引不能用于評估求值引用它的表達(dá)式。

為了演示這個,我們創(chuàng)建一個名為tests的表,并將一些數(shù)據(jù)插入到這個表中。

CREATE TABLE tests (
? ? id INT AUTO_INCREMENT PRIMARY KEY,
? ? t DATETIME UNIQUE
);
INSERT INTO tests(t)?
WITH RECURSIVE times(t) AS
(?
? ? SELECT now() - interval 1 YEAR t
? ? ? ? UNION ALL?
? ? SELECT t + interval 1 hour
? ? FROM times
? ? WHERE t < now()?
)
SELECT t
FROM times;

請注意,我們使用遞歸CTE來生成時間序列。 CTE從MySQL 8.0開始才有的功能。

因為t列有唯一索引,所以下列查詢應(yīng)該執(zhí)行得很快:

SELECT 
    id, 
    t
FROM
    tests
WHERE
    t >= SYSDATE() - INTERVAL 1 DAY;

但是,需要15ms才能完成。讓我們使用EXPLAIN語句來看看細(xì)節(jié)。

EXPLAIN SELECT 
    id, t
FROM
    tests
WHERE
    t >= SYSDATE() - INTERVAL 1 DAY;

執(zhí)行上面分析語句,得到類似以下結(jié)果 - 

原來,MySQL必須掃描表中的所有行才能獲取數(shù)據(jù)。該索引無法使用。

如果在查詢中將SYSDATE()更改為NOW()函數(shù):

SELECT 
    id, 
    t
FROM
    tests
WHERE
    t >= NOW() - INTERVAL 1 DAY;

使用NOW()函數(shù),索引已被用于查詢數(shù)據(jù),如下面的EXPLAIN結(jié)果所示:

EXPLAIN SELECT 
    id, 
    t
FROM
    tests
WHERE
    t >= NOW() - INTERVAL 1 DAY;

請注意,MySQL為您提供了--sysdate-is-now選項,可以使SYSDATE()函數(shù)的行為與NOW()函數(shù)相同。

MySQL Sysdate函數(shù)的注意事項

1、MySQL Sysdate函數(shù)不支持傳遞參數(shù)。

2、MySQL Sysdate函數(shù)在不同的操作系統(tǒng)上返回的時間戳可能會有所不同。

3、MySQL Sysdate函數(shù)返回的日期和時間戳基于系統(tǒng)時鐘。

總結(jié)

到此這篇關(guān)于MySQL sysdate()函數(shù)的具體使用的文章就介紹到這了,更多相關(guān)MySQL sysdate內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mysql分組后如何獲取每個組的第一條數(shù)據(jù)

    mysql分組后如何獲取每個組的第一條數(shù)據(jù)

    這篇文章主要介紹了mysql分組后如何獲取每個組的第一條數(shù)據(jù)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • MySQL8.4實現(xiàn)RPM部署指南

    MySQL8.4實現(xiàn)RPM部署指南

    MySQL8.4是一個穩(wěn)定和高性能的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),本文主要介紹了MySQL8.4實現(xiàn)RPM部署指南,具有一定的參考價值,感興趣的可以了解一下
    2024-06-06
  • MySQL如何快速批量插入1000w條數(shù)據(jù)

    MySQL如何快速批量插入1000w條數(shù)據(jù)

    這篇文章主要給大家介紹了關(guān)于MySQL如何快速批量插入1000w條數(shù)據(jù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • 淺析drop user與delete from mysql.user的區(qū)別

    淺析drop user與delete from mysql.user的區(qū)別

    本篇文章是對drop user與delete from mysql.user的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • Windows11下MySQL?8.0.29?安裝配置方法圖文教程

    Windows11下MySQL?8.0.29?安裝配置方法圖文教程

    這篇文章主要為大家詳細(xì)介紹了Windows11下MySQL?8.0.29?安裝配置方法圖文教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • 設(shè)置MySQL自動增長從某個指定的數(shù)開始方法

    設(shè)置MySQL自動增長從某個指定的數(shù)開始方法

    下面小編就為大家?guī)硪黄O(shè)置MySQL自動增長從某個指定的數(shù)開始方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • MySQL中的驅(qū)動表與被驅(qū)動表及含義

    MySQL中的驅(qū)動表與被驅(qū)動表及含義

    使用join連接查詢時如果有where條件,則MySQL執(zhí)行器會根據(jù)查詢條件過濾后的結(jié)果自動選擇驅(qū)動表或被驅(qū)動表,這篇文章主要介紹了MySQL的驅(qū)動表與被驅(qū)動表,需要的朋友可以參考下
    2023-10-10
  • 超全MySQL學(xué)習(xí)筆記

    超全MySQL學(xué)習(xí)筆記

    本文詳細(xì)介紹了MySQL索引優(yōu)化、鎖和事物等學(xué)習(xí)記錄,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • mysql prompt一個特別好用的命令

    mysql prompt一個特別好用的命令

    本篇文章是對mysql中的prompt進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • 詳解Windows?Server?2012下安裝MYSQL5.7.24的問題

    詳解Windows?Server?2012下安裝MYSQL5.7.24的問題

    這篇文章主要介紹了Windows?Server?2012下安裝MYSQL5.7.24的詳細(xì)過程,本文通過圖文并茂實例代碼相結(jié)合給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-02-02

最新評論

襄汾县| 康平县| 太康县| 汉中市| 昌吉市| 枞阳县| 瓮安县| 闵行区| 巴青县| 玉田县| 腾冲县| 湘潭市| 个旧市| 阿拉善盟| 陕西省| 宁波市| 定安县| 东宁县| 封丘县| 毕节市| 呈贡县| 大荔县| 兖州市| 卓资县| 永安市| 溧阳市| 宿州市| 泉州市| 汨罗市| 华容县| 邵武市| 淳安县| 东港市| 海宁市| 林甸县| SHOW| 衡南县| 宁都县| 定州市| 梅河口市| 揭阳市|