2 baidu 28843887 baidu_28843887 于 2015.06.26 14:15 提问

Mysql数据库如何实现多列组合去重复,然后统计个数?

在mysql数据库中有一表table,根据两列 ip,cookie。通过这两列去除重复记录后统计个数
ip-------cookie
1.1.1.1-----123456
1.1.1.1-----123478
1.1.1.1-----123654
1.1.1.1-----123456
查询后得出
ip-------cookie
1.1.1.1-----123456
1.1.1.1-----123478
1.1.1.1-----123654

统计数:3

1个回答

danielinbiti
danielinbiti   Ds   Rxr 2015.06.26 14:18
已采纳
 select distinct ip,cookie from table
 select count(distinct ip,cookie) from table
baidu_28843887
baidu_28843887 回复danielinbiti: 谢谢您了,其实上次就是您帮我解答的。太感谢了。
接近 3 年之前 回复
baidu_28843887
baidu_28843887 回复danielinbiti: 我如果把有空值的那一列去掉之后,distinct 后面只有一列的话sql语句可以统计出来有1条记录。
接近 3 年之前 回复
danielinbiti
danielinbiti 回复baidu_28843887: 会,select count(distinct ifnull(ip,""),ifnull(cookie,"")) from table
接近 3 年之前 回复
baidu_28843887
baidu_28843887 如果我有一列是空的是不是会对结果有影响呢?有的话如何解决?
接近 3 年之前 回复
danielinbiti
danielinbiti 回复baidu_28843887: 如果没报错且条件都一样,那应该结果是一样的。
接近 3 年之前 回复
danielinbiti
danielinbiti 回复baidu_28843887: 不应该呀。
接近 3 年之前 回复
baidu_28843887
baidu_28843887 我用了这种,这个select distinct ip,cookie from table能查出一条记录,下面的count统计的确实0条记录,这是什么原因呢?
接近 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!