我有一张表,上面放着很长的文字,例如电子邮件内容或新闻。我的问题是,对表行进行计数的性能是否有所不同:
SELECT COUNT(*) FROM table_name SELECT COUNT(t.id) FROM table_name as t
哪一个更好?还是后者将通过查询优化器进行优化?是否有与此相关的文档?
他们是不同的。
COUNT(*)将检索所有值(甚至NULL值计数)。 COUNT(t.id)不计算NULL值。
COUNT(*)
NULL
COUNT(t.id)
在性能方面,它们是相同的(查询优化器很聪明)。