使用GROUP BY的时候如何统计记录条数 COUNT(*) DISTINCT


Posted in PHP onApril 23, 2011

例如这样一个表,我想统计email和passwords都不相同的记录的条数

CREATE TABLE IF NOT EXISTS `test_users` ( 
`email_id` int(11) unsigned NOT NULL auto_increment, 
`email` char(100) NOT NULL, 
`passwords` char(64) NOT NULL, 
PRIMARY KEY (`email_id`) 
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ;

INSERT INTO `test_users` (`email_id`, `email`, `passwords`) VALUES
(1, ‘jims@gmail.com', ‘1e48c4420b7073bc11916c6c1de226bb'),
(2, ‘jims@yahoo.com.cn', ‘5294cef9f1bf1858ce9d7fdb62240546′),
(3, ‘default@gmail.com', ‘5294cef9f1bf1858ce9d7fdb62240546′),
(4, ‘jims@gmail.com', ”),
(5, ‘jims@gmail.com', ”);

通常我们的做法是这样

SELECT COUNT(*) FROM test_users WHERE 1 = 1 GROUP BY email,passwords

这样的结果是什么呢?
COUNT(*) 
1 
2 
1 
1

显然这不是我要的结果,这样统计出来的是相同email和passwords的各个记录数量之和,下面这样就可以了
SELECT COUNT(DISTINCT email,passwords) FROM `test_users` WHERE 1 = 1

当然在php里面也可以用mysql_num_rows来获取记录的条数,但是这样的效率不高,可以参考这篇文章
mysql_num_rows VS COUNT 效率问题分析
PHP 相关文章推荐
PHP读取MySQL数据代码
Jun 05 PHP
PHPCMS的使用小结
Sep 20 PHP
PHP读取xml方法介绍
Jan 12 PHP
php验证session无效的解决方法
Nov 04 PHP
如何实现php图片等比例缩放
Jul 28 PHP
PHP模拟post提交数据方法汇总
Feb 16 PHP
Zend Framework动作助手Url用法详解
Mar 05 PHP
php制作圆形用户头像的实例_自定义封装类源代码
Sep 18 PHP
PHP 实现人民币小写转换成大写的方法及大小写转换函数
Nov 17 PHP
解决Laravel blade模板转义html标签的问题
Sep 03 PHP
laravel http 自定义公共验证和响应的方法
Sep 29 PHP
Laravel 修改默认日志文件名称和位置的例子
Oct 17 PHP
mysql_num_rows VS COUNT 效率问题分析
Apr 23 #PHP
fleaphp rolesNameField bug解决方法
Apr 23 #PHP
FirePHP 推荐一款PHP调试工具
Apr 23 #PHP
在smarty模板中使用PHP函数的方法
Apr 23 #PHP
对text数据类型不支持代码页转换 从: 1252 到: 936
Apr 23 #PHP
fleaphp crud操作之find函数的使用方法
Apr 23 #PHP
fleaphp crud操作之findByField函数的使用方法
Apr 23 #PHP
You might like
Protoss热键控制
2020/03/14 星际争霸
php下使用无限生命期Session的方法
2007/03/16 PHP
去掉destoon资讯内容页keywords关键字自带的文章标题的方法
2014/08/21 PHP
总结PHP中初始化空数组的最佳方法
2019/02/13 PHP
laravel返回统一格式错误码问题
2019/11/04 PHP
jQuery boxy弹出层插件中文演示及使用讲解
2011/02/24 Javascript
jquery内置验证(validate)使用方法示例(表单验证)
2013/12/04 Javascript
javascript实现淘宝幻灯片广告展示效果
2015/04/27 Javascript
极易被忽视的javascript面试题七问七答
2016/02/15 Javascript
获取jqGrid中选择的行的数据
2016/11/30 Javascript
JavaScript Date 知识浅析
2017/01/29 Javascript
Javascript之深入浅出prototype
2017/02/06 Javascript
JavaScript中无法通过div.style.left获取值的解决方法
2017/02/19 Javascript
js获取json中key所对应的value值的简单方法
2020/06/17 Javascript
详解vue2.0组件通信各种情况总结与实例分析
2017/03/22 Javascript
vue 粒子特效的示例代码
2017/09/19 Javascript
vue如何进行动画的封装
2018/09/26 Javascript
Vue 实现简易多行滚动"弹幕"效果
2020/01/02 Javascript
Vue中添加滚动事件设置的方法详解
2020/09/14 Javascript
Python使用Srapy框架爬虫模拟登陆并抓取知乎内容
2016/07/02 Python
python中matplotlib实现最小二乘法拟合的过程详解
2017/07/11 Python
python3使用pyqt5制作一个超简单浏览器的实例
2017/10/19 Python
python执行CMD指令,并获取返回的方法
2018/12/19 Python
python 图片去噪的方法示例
2019/07/09 Python
Django接收post前端返回的json格式数据代码实现
2019/07/31 Python
Python+OpenCV 实现图片无损旋转90°且无黑边
2019/12/12 Python
Python 模拟生成动态产生验证码图片的方法
2020/02/01 Python
详解python的xlwings库读写excel操作总结
2021/02/26 Python
俄罗斯街头服装品牌:Black Star Wear
2017/03/01 全球购物
奶茶店创业计划书
2014/08/14 职场文书
领导班子四风对照检查材料思想汇报
2014/09/26 职场文书
高校群众路线教育实践活动剖析材料
2014/10/10 职场文书
汽车销售员岗位职责
2015/04/11 职场文书
微信早安问候语
2015/11/10 职场文书
《7的乘法口诀》教学反思
2016/02/18 职场文书
Win11运行育碧游戏总是崩溃怎么办 win11玩育碧游戏出现性能崩溃的解决办法
2022/04/06 数码科技