mysql在表中选择唯一用户并根据列对其进行多次计数

标签 mysql sql

如果我有这样一张表:

id | vid  | cid   | ipaddress 
 1 | 1    | 1     | 1.1.1.1
 2 | 1    | 1     | 1.1.1.1
 3 | 1    | 1     | 1.1.1.2
 4 | 2    | 1     | 2.2.2.2
 5 | 2    | 1     | 2.2.2.2
 6 | 2    | 1     | 2.2.2.2

vid 是访问者 ID,cid 是事件 ID

如果访问者访问事件,访问将被捕获到表格中。然后我想显示唯一访问次数,不是基于用户,而是基于用户和 ip。因此,对于上面的数据,它是 2 个用户和 1 个使用 2 个不同 ip 地址访问的用户,那么我如何进行选择查询以选择不同的访问者,但如果他们使用多个 ip 地址,则多次计算访问者?以上捕获数据应显示的总数为 3 次独立访问。

最佳答案

好吧,你可以试试这个:-

SELECT vid, count(distinct(IP)) AS dstn from test

enter image description here

关于mysql在表中选择唯一用户并根据列对其进行多次计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33175417/

相关文章:

mysql - 将模型对象链接到 Vapor 中的现有数据库表

java - JDBC 在生产服务器上不工作

php - 使用 MySQL 和 PHP 将图像添加到排名 1、2 和 3

mysql - SQL LIKE 用于数字搜索

mysql - MySQL 有基于时间的触发器吗?

mysql - 将两个不同表中的两列相乘并将它们组合在一起

mysql - MYSQL语言中字段级别的比较

sql - 何时使用表运算符 APPLY

mysql - sql-server 到 mysql 的翻译

sql - 由于逗号分隔值,无法弄清楚如何连接表