@TOC
前言
本文主要记录count()操作的相关笔记,在刷SQL题的时候突然发现有人计算记录数时使用了count(1),令我颇为不解,然后就跑去搜,感觉还挺有意思的,写个博文记录一下目前我的理解,目前的结论时count(1)和count(*)用来计算记录数时的效果甚至是速度方面几乎是没有差异的,但是可以对这个count(1)有一个更深的理解。
1. count(*)
select count(*) from table
2. count(1)/count(n)
将数字1作为列统计,实际是自动构造了一个虚拟值为1的列,当然这个值不一定要为1,也可以是任意整数,包括复数也可以。我们可以做个实验,比如直接
select -1,table.* from table

