开发者社区> 问答> 正文

mysql 中select now(); 是怎么执行的?没有指定FROM tablename?

mysql中 使用指令select now();就会获取当前时间日期。为什么没有from table,这种指令也能执行?不指定表的时候,应该如何理解select呢?

展开
收起
蛮大人123 2016-02-06 18:57:49 4682 0
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

    now()是mysql内置函数,返回当前时间,而select可以不从表中获取数据。即使使用select now() from table,这个table也会被忽略,因为now()用不上全选复制放进笔记SELECT can also be used to retrieve rows computed without reference to any table.
    For example:
    mysql> SELECT 1 + 1;

        -> 2

    You are permitted to specify DUAL as a dummy table name in situations where
    no tables are referenced:
    mysql> SELECT 1 + 1 FROM DUAL;

        -> 2

    DUAL is purely for the convenience of people who require that all SELECT statements
    should have FROM and possibly other clauses.
    MySQL may ignore the clauses. MySQL does not require FROM DUAL if no tables are referenced.

    2019-07-17 18:38:42
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
One Box: 解读事务与分析一体化数据库 HybridDB for MySQL 立即下载
One Box:解读事务与分析一体化数据库HybridDB for MySQL 立即下载
如何支撑HTAP场景-HybridDB for MySQL系统架构和技术演进 立即下载

相关镜像