选择唯一/唯一但返回所有列

时间:2017-11-10 06:39:33

标签: php mysql

我有一个脚本设置,可以定期报告大量数据,例如IP地址和访问者所在的页面。

我需要后端脚本来显示IP地址访问过的最新页面。

我的数据库设置如下:

enter image description here

我希望能够使用所有列,例如“browseid”和“page”。我想只检索最后一个值。为了给你一个参考框架,使用上面的示例数据,我只想检索记录 60 ,因为它是IP xxx.xx.xxx.xx <的最后一页/ strong>访问过。

我一直在努力找到一个适用于最后一小时的解决方案,但我无法让它工作。我也试图在特定时间范围内选择数据。以下是我用来检查的内容:

WHERE ts >= '" . strtotime("-15 minutes") . "' AND expiry <= '" . time() . "'

1 个答案:

答案 0 :(得分:1)

你可以在ip上摸索的最大id上使用连接,例如:

 select * from my_table m 
 inner join  (
    select clientip, max(browseid) as m_id 
    from my_table
    group by clientip
 ) t on t.clientip = m.clientip and t.m_id = m.browseid