gpt4 book ai didi

mysql - MySQL 中 SYSDATE()、NOW()、CURRENT_TIMESTAMP、CURRENT_TIMESTAMP() 的区别?

转载 作者:IT王子 更新时间:2023-10-29 00:38:46 29 4
gpt4 key购买 nike

据我所知,

SYSDATE(),
NOW(),
CURRENT_TIMESTAMP, and
CURRENT_TIMESTAMP()

在 MySQL 中是彼此的同义词。它们都返回相同的值,那么为什么 MySQL 提供所有这些值呢?是否有不同的场景可以使用其中的特定场景?

最佳答案

它们并不都是同义词。

SYSDATE()NOW() 有很大的不同。作为示范:

SELECT NOW(), SYSDATE(), SLEEP(5), NOW(), SYSDATE()

输出可能如下所示:

(玩 waldo 在哪里寻找差异,它从最后一个不同的表达式返回,第二次调用 SYSDATE,延迟 5 秒后,返回一个相差 5 秒的值)

2018-03-01 11:09:19
2018-03-01 11:09:19
0
2018-03-01 11:09:19
2018-03-01 11:09:24

(在某些情况下我们希望使用 SYSDATE() 而不是 NOW())

MySQL 提供了多种可以返回相同结果的表达式

DATE(NOW())CURRDATE()

我怀疑这在很大程度上是因为希望通过更紧密地匹配(在可能和适当的情况下)Oracle、SQL Server 等使用的函数名称和语法来更轻松地从其他关系 DBMS 转换。

关于mysql - MySQL 中 SYSDATE()、NOW()、CURRENT_TIMESTAMP、CURRENT_TIMESTAMP() 的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28315254/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com