Q1: why count(*) is so much slower than count(distinct col)?
Q2: should id always use count(distinct col)?
select count(id) from source;
+-----------+
| count(id) |
+-----------+
| 22713 |
+-----------+
1 row in set (0.73 sec)
mysql> select count(distinct id) from source;
+--------------------+
| count(distinct id) |
+--------------------+
| 22836 |
+--------------------+
1 row in set (0.08 sec)