我想从名为 cars 的表中返回 3 行,每辆车都应该有一个不同的 dealer_id ,我希望它们按 ID desc 排序(以便返回添加到数据库中的最新三辆汽车)
SELECT id,dealer_id,name,model_year
FROM cars
GROUP by dealer_id
ORDER BY id DESC
LIMIT 3;
但此查询不会从每个不同的 dealer_id
最佳答案
如果你想要最近的记录,那么你可以使用类似下面的东西:
SELECT c1.id,
c1.dealer_id,
c1.name,
c1.model_year,
c1.date_Added
FROM cars c1
inner join
(
select dealer_id, max(date_Added) mxdate
from cars
group by dealer_id
) c2
on c1.dealer_id= c2.dealer_id
and c1.date_Added = c2.mxdate
GROUP BY dealer_id
ORDER BY id desc
LIMIT 3;
关于mysql - 如何在 MySQL 中查询以下内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11970675/