获取mariaDB / SQL记录计数的最有效方法

时间:2019-11-22 06:41:49

标签: sql mariadb

一个关于简单SQL语句的问题,但是我有时对此感到疑惑。以为我会看看是否有人知道答案。

在使用简单的SQL语句对表中的记录进行计数时,该语句的窃听最少:

1) SELECT COUNT(single_primary_field) FROM table, i.e. SELECT COUNT(user_ID) FROM users;

2) SELECT COUNT(*) FROM table

我最初认为第一个可能最快。但是也许没有特定的领域可以使第二个更快?

无论哪种方式,速度差异都很小。

谢谢

3 个答案:

答案 0 :(得分:1)

COUNT(column)仅计算选定的列,而忽略空值。

COUNT(*)对行进行计数,而不关心列中的值。

使用COUNT(*)是对行进行计数的更好方法。

答案 1 :(得分:0)

Count(*)是根据mysql进行计数的最有效方法: Count

答案 2 :(得分:0)

请通读https://mariadb.com/kb/en/library/explain/,以了解查询所使用的索引类型,通常可以暗示其性能。

我认为Count(*)将是最快的,因为maria确实会存储一个连续的计数。

相关问题