gpt4 book ai didi

php - 获取分组 Mysql 查询中的最后一个 id

转载 作者:行者123 更新时间:2023-11-29 18:10:46 32 4
gpt4 key购买 nike

SELECT * 
FROM
( SELECT *
FROM notifications
ORDER
BY id DESC
) t
WHERE t.userTo = '".$myId."'
GROUP
BY t.postId
, t.dataId
, t.type

我使用上面的代码尝试在对行进行分组之前按降序对表进行排序,这样我将得到每个组中的最后一行,但我得到的是第一行。

代码在 Mysql5.5.8 中工作正常,但是升级我的使用 MySQL5.7.14 运行的 WAMP SERVER 后,代码无法工作

请问您知道如何解决这个问题吗?

最佳答案

尝试这个查询

SELECT n.*
FROM notifications n
JOIN
(
SELECT postId,dataId,type,MAX(id) LastID
FROM notifications
WHERE userTo='...'
GROUP BY postId,dataId,type
) l
ON n.postId=l.postId AND n.dataId=l.dataId AND n.type=l.type AND n.id=l.LastID
ORDER BY n.id DESC

SQL fiddle - http://sqlfiddle.com/#!9/4436b9/3

关于php - 获取分组 Mysql 查询中的最后一个 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47431285/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com