MySQL 数据库有一张表,数据量是6800w条,现在使用count 对数据进行统计
1. 首先看下MySQL的表结构
CREATE TABLE `business_dict` ( `url_id` int(11) NOT NULL AUTO_INCREMENT, `company_name` varchar(100) DEFAULT NULL, `business_address` varchar(500) DEFAULT NULL, PRIMARY KEY (`url_id`) ) ENGINE=InnoDB AUTO_INCREMENT=68227456 DEFAULT CHARSET=utf8mb4;
url_id 是主键自增,引擎是 innodb,数总量是 68227455。
2. 几种SQL的写法
SELECT COUNT(1) FROM `business_dict`; SELECT COUNT(company_name) FROM `business_dict`; SELECT COUNT(*) FROM `business_dict`; SELECT COUNT(url_id) FROM `business_dict` WHERE url_id > 1; SELECT COUNT(url_id) FROM `business_dict`;
3. sql 允许时间对比
SELECT COUNT(1) FROM `business_dict` > OK > 时间: 84.687s SELECT COUNT(company_name) FROM `business_dict` > OK > 时间: 82.016s SELECT COUNT(*) FROM `business_dict` > OK > 时间: 91.99s SELECT COUNT(url_id) FROM `business_dict` WHERE url_id > 1 > OK > 时间: 99.675s SELECT COUNT(url_id) FROM `business_dict` > OK > 时间: 89.952s
总结:sql查询时间差别不是很大