【发布时间】:2021-07-21 01:57:07
【问题描述】:
尝试在this question 的基础上构建,我之前问过。我现在需要计算在每个位置看到多少不同的设备,而不是计算总设备数,因为每个设备都可以被多次看到。
这可以是 MySQL 或 Python Pandas 解决方案。
Sal 之前为我回答了这个问题。
数据库看起来像这样
+----------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| pi_id | varchar(64) | NO | | NULL | |
| name | varchar(127) | NO | | NULL | |
| location | varchar(255) | NO | | NULL | |
| mac_id | varchar(200) | NO | | NULL | |
| rssi | int(11) | NO | | NULL | |
| datetime | datetime | NO | | NULL | |
+----------+--------------+------+-----+---------+-------+
之前使用的答案是
SELECT concat( date_format(datetime,'%Y-%m-%d %k:')
, lpad(floor(minute(datetime)/5)*5,2,'0')
, ':00'
) datetime
, location
, count(1)
FROM packet_locations
GROUP BY date(datetime)
, hour(datetime)
, floor(minute(datetime)/5)
, location;
【问题讨论】:
-
查看
COUNT(DISTINCT ) -
谢谢你,有时候事情是如此明显,以至于他们只是从你身边擦肩而过。
标签: mysql sql pandas relational-database