MYSQL 选择时间戳最高且销售数量最高的所有项目编号


SELECT *
FROM table
INNER JOIN 
(SELECT itemno, MAX(last_updated) as TopDate
FROM table
WHERE userID = 'user'
GROUP BY itemno) AS EachItem ON 
EachItem.TopDate = table.last_updated 
AND EachItem.itemno = table.itemno

我从上一篇文章中获取了上面的解决方案,并对其进行了修改以与我创建的函数之一一起使用,但现在我想使用相同的查询,但对其进行调整以按 max(last_updated((这是我表中的时间戳(和 max(qty_sold( 对结果进行排序。

基本上,我在表中有多个重复的itemnos,但只想为指定了特定用户ID的每一行返回具有最新日期和最高qty_sold的行。

提前非常感谢,我花了几个小时搜索,但由于我对 mysql 相当陌生,所以无法弄清楚这一点。

经过更多尝试,通过在末尾添加 ORDER BY qty_sold DESC 解决了我自己的问题。

SELECT *
FROM table
INNER JOIN 
(SELECT itemno, MAX(last_updated) as TopDate
FROM table
WHERE userID = 'user'
GROUP BY itemno) AS EachItem ON 
EachItem.TopDate = table.last_updated 
AND EachItem.itemno = table.itemno
ORDER BY qty_sold DESC

最新更新