我有一张如下所示的表格Mysql数据跳转检查
MAC地址| ACCESSPOINT | TIMESTAMP
数据以15分钟间隔由所有访问点推入表中。
我想运行一个查询来告诉我在一个给定的范围内出现在多个Accesspoint上的MAC地址?
我有一张如下所示的表格Mysql数据跳转检查
MAC地址| ACCESSPOINT | TIMESTAMP
数据以15分钟间隔由所有访问点推入表中。
我想运行一个查询来告诉我在一个给定的范围内出现在多个Accesspoint上的MAC地址?
选择MAC,计数(不同的名称)作为OCC从
(从maclist 选择mac
,name
哪里2011-07-08 00:00之间” datim
: 00“和”2011-07-14 23:59:59“ 按名称排序,mac
按排序顺序排列)
作为tmo分组由mac具有occ> 1;
这为我工作
尝试类似...
select mac
where datim between firstdate and lastdate
group by mac
having count(*) > 1
- 删除多余的ACC格式组... JK
的查询是这样的:
Select `MAC_ADDRESS`,`ACCESSPOINT`,`TIMESTAMP`,count(*) as occurences from
theTable where occurences > 1 and `TIMSTAMP` between TIME1 and TIME2
group by `MAC_ADDRESS` order by occurences desc ;
这将使你在相同的接入点上,最重复的MAC地址后跟较少的MAC地址列表。
试试这个:
SELECT `MAC-ADDRESS`
FROM mytable
WHERE `TIMESTAMP` BETWEEN <YOUR-TIMESTAMP-1> AND <YOUR-TIMESTAMP-2>
GROUP BY `ACCESSPOINT`
HAVING COUNT(1) > 1
SELECT mac_address
, COUNT(DISTINCT accesspoint) AS occurences
FROM maclist
WHERE `timestamp` BETWEEN @StartTimestamp AND @EndTimestamp
GROUP BY mac_address
HAVING COUNT(DISTINCT accesspoint) > 1
这似乎不正确恕我直言,只需要在Mac分组,无法在Mac,累计。 – DhruvPathak
正确...谢谢 –