博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解决mysql group by和count同时使用的问题
阅读量:7157 次
发布时间:2019-06-29

本文共 807 字,大约阅读时间需要 2 分钟。

例如这样一个表,我想统计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

 

转载地址:http://fsegl.baihongyu.com/

你可能感兴趣的文章
CMakeLists 可以设置的参数
查看>>
Android 6.0 解决Recyclerview 在 Scrollview 中不能高度自适应问题
查看>>
WebView Cache 缓存清除
查看>>
spring boot 源码分析(九) 事件机制 之 BootstrapApplicationListener
查看>>
Android实现号码归属地查询
查看>>
Python 爬虫实现
查看>>
java日期循环
查看>>
我的友情链接
查看>>
HttpClient调用wsdl协议
查看>>
Ansible 必须安装sshpass计划(you must install the sshpass program)
查看>>
我的友情链接
查看>>
三剑客之sed牛刀小试(二)
查看>>
查询DB version
查看>>
spring环境搭建
查看>>
我的友情链接
查看>>
ruby常用gem整理
查看>>
手机短信发送
查看>>
Server 2003 当用户从 CA Web 注册页请求的证书"没有证书模板可能会找到"错误消息...
查看>>
android 取消标题,程序意外停止
查看>>
合服操作 first
查看>>