我正在尝试在sql问题上做一些练习问题,因为我意识到我在努力解决它们。
我一直在玩一个我的样本数据库,我试图列出餐馆名称,检查日期和总分,但只显示每个餐厅检查的最近日期。
餐厅有一个摆脱检查和名称的外键。检查有一个摆脱,idate(检查日期)和检查的总计。
我如何获得具有最新检查分数和检查日期的餐馆列表?
SELECT i.idate, r.name, i.totalscore
FROM restaurant r
JOIN inspection i
ON r.rid = i.rid where
i.idate = (SELECT i1.idate
FROM restaurant r1
JOIN inspection i1
ON r1.rid = i1.rid
order by idate desc limit 1
);
谢谢!
答案 0 :(得分:0)
比那更容易
SELECT
i.idate, r.name, i.totalscore
FROM restaurant r
JOIN inspection i
ON r.rid = i.rid
where 1
GROUP BY r.name ORDER BY i.idate desc