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

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

mysql中 使用指令select now();就会获取当前时间日期。为什么没有from table,这种指令也能执行?

不指定表的时候,应该如何理解select呢?


参考文档
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.
【热门文章】
【热门文章】