MariaDB生成了列与内置函数,哪一个更快?

时间:2018-05-21 14:49:26

标签: mariadb query-optimization

默认情况下,字段date为YYYY-MM-DD。

查询1:

select date_format(`date`,'%d-%m-%Y') from myTable;

查询2:

select `genDate` from myTable;

成为date_format(date,'%d-%m-%Y') as genDate,是一个虚拟的,未编入索引的生成列。

1 个答案:

答案 0 :(得分:0)

对于非持久的非索引列,这两个查询是等效的。

在其他情况下 - 如果列是持久的并且已编入索引 - 那么查询2将受益于索引,跳过主存储并使用类似于全索引扫描的操作读取(最可能)较小的索引。那样会更快。

但作为一般规则,两个查询在资源和性能方面都是等效的。