mysql - 查询将行中的 max(col) 和关联的 col 链接到不同的表

标签 mysql sql max inner-join

我有 2 张 table :

**Inbox**
- InboxID
- PostID
- UserID
- datePosted

**Users**
- UserID
- FName
- SName
- Pic

我需要做的是获取收件箱表中的最高 datePosted val,其中 userID 不等于传入的特定 val,并且 postID 等于我传入的 val。然后我需要获取 FName 、与最高发布日期值同一行的 UserID 的 SName 和 Pic。

我的尝试:

SELECT
    MAX(Inbox.datePosted),
    uSERS.uSERid,
    Users.FName as commenterFname, 
    Users.SName as commenterSName,
    Users.Pic as commenterPic
FROM
    Inbox
    INNER JOIN Users
        ON Inbox.UserID = Users.UserID
        WHERE PostID = 807 AND Inbox.userID <> 36

最佳答案

未经测试...选择发布日期等于最大发布日期的行。

   SELECT
        Inbox.datePosted as datePosted,
        uSERS.uSERid     as uSERid,
        Users.FName      as commenterFname, 
        Users.SName      as commenterSName,
        Users.Pic        as commenterPic
    FROM Inbox
      INNER JOIN Users ON Inbox.UserID = Users.UserID
    WHERE PostID = 807 AND Inbox.userID <> 36
      and datePosted = (select max(datePosted)
                        FROM Inbox
                          INNER JOIN Users ON Inbox.UserID = Users.UserID
                        WHERE PostID = 807 AND Inbox.userID <> 36)

关于mysql - 查询将行中的 max(col) 和关联的 col 链接到不同的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32524265/

相关文章:

MySQL 从 2 个或多个表中进行选择,其中的 where 子句具有表 A 中的条件位于表 B 中

sql - 在 PostgreSQL 查询中获取大对象的大小?

当满足一个或另一个条件但不是同时满足两个条件时,SQL 选择

mysql - MAX 和 GROUP BY 不返回好的值

PHP 查询死于流量

mysql - CURRENT_TIMESTAMP 仅更新一列

post - Wildfly 10 忽略的最大帖子大小

java - 在二维数组中查找峰值的算法

java - 在java中根据出生日期和当前日期计算年龄

MySQL - 即使结果为 0,也返回列的 count()