【问题标题】:Find the latest location of each users in a MySQL table在 MySQL 表中查找每个用户的最新位置
【发布时间】:2014-08-27 10:40:09
【问题描述】:

我有这张表,我想在其中使用 SQL 查询查找每个用户的最新位置。

该表包含 (1) 电子邮件、(2) 时间戳、(3) 位置等列。

所以如果表格是这样的:

email            timestamp    location
user1@email.com  27.08.2014   kitchen
user1@email.com  28.08.2014   livingroom
user1@email.com  29.08.2014   kitchen
user2@email.com  26.08.2014   hallway
user2@email.com  27.08.2014   kitchen

我希望它输出:

email            timestamp    location
user1@email.com  29.08.2014   kitchen
user2@email.com  27.08.2014   kitchen

【问题讨论】:

    标签: mysql sql mysqli


    【解决方案1】:
    SELECT yt.* FROM your_table yt
    INNER JOIN (
        SELECT
        email, MAX(timestamp) max_ts
        FROM
        your_table 
        GROUP BY email
    ) sq ON yt.email = sq.email AND yt.timestamp = sq.max_ts
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-22
      • 2019-03-24
      • 2013-04-06
      • 1970-01-01
      • 1970-01-01
      • 2022-01-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多