2011-07-15 23 views
0

我有一张如下所示的表格Mysql数据跳转检查

MAC地址| ACCESSPOINT | TIMESTAMP

数据以15分钟间隔由所有访问点推入表中。

我想运行一个查询来告诉我在一个给定的范围内出现在多个Accesspoint上的MAC地址?

回答

-1

选择MAC,计数(不同的名称)作为OCC从

(从maclist 选择macname哪里2011-07-08 00:00之间” datim: 00“和”2011-07-14 23:59:59“ 按名称排序,mac按排序顺序排列)

作为tmo分组由mac具有occ> 1;

这为我工作

0

尝试类似...

select mac 
where datim between firstdate and lastdate 
group by mac 
having count(*) > 1 

- 删除多余的ACC格式组... JK

+0

这似乎不正确恕我直言,只需要在Mac分组,无法在Mac,累计。 – DhruvPathak

+0

正确...谢谢 –

0

的查询是这样的:

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地址列表。

0

试试这个:

SELECT `MAC-ADDRESS` 
    FROM mytable 
    WHERE `TIMESTAMP` BETWEEN <YOUR-TIMESTAMP-1> AND <YOUR-TIMESTAMP-2> 
    GROUP BY `ACCESSPOINT` 
    HAVING COUNT(1) > 1 
0
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