我有以下查询
SELECT m.uid
,m.ttime
,m.mac
,m.vendor
,m.ssid
,m.rssi
,k.note1
,k.note2
FROM monitor m
LEFT OUTER JOIN known k ON m.mac=k.mac
WHERE (`ttime` > DATE_SUB(now(), INTERVAL 1 DAY))
AND (monitor.mac !='b8:27:eb:91:b5:bb')
ORDER BY monitor.uid desc
将其格式化为表格。我希望该表有一个额外的列,给出monitor.mac出现在表中的次数。这表明它是新的还是经常出现。
SQL查询作为字符串传递给php页面以供显示,所以我只能调整查询,而不是使用另一个带有自己查询的变量。
编辑以从现有查询中添加示例输出行:
3637
2017-10-29 08:57:20
6c:88:14:2e:cc:fc
Intel Corporate
GHC
-65
NULL
NULL
想要添加此MAC出现的次数
答案 0 :(得分:0)
如果您希望特定的监视器列出重复的次数,您可以简单地使用GROUP BY
和条件搜索。
SELECT m.uid
,m.ttime
,m.mac
,m.vendor
,m.ssid
,m.rssi
,k.note1
,k.note2
FROM monitor m
LEFT OUTER JOIN known k ON m.mac=k.mac
WHERE (`ttime` > DATE_SUB(now(), INTERVAL 1 DAY))
AND (monitor.mac !='b8:27:eb:91:b5:bb')
GROUP BY monitor.mac
HAVING count(*) > 1
ORDER BY monitor.uid desc