gpt4 book ai didi

mysql - 使用内部联接和分组依据

转载 作者:行者123 更新时间:2023-11-30 23:35:11 26 4
gpt4 key购买 nike

我有一家餐馆。所以我有一个“菜单”表和一个“订单”表。我想找到最近订购某道菜的时间。所以我知道我必须在某些时候使用 group by dishId,但我尝试的所有操作都会返回错误。以下查询有效,但它返回重复项。我只想要每道菜的最新实例。请注意,我的“订单”表包含我目前不感兴趣的客户信息。

select o.timestamp, m.* 
from orders o
inner join menu m
on (o.dishId = m.dishId);

最佳答案

我认为你在这里遇到的问题是你需要包括你想要分组的每一列

select m.dishId, MAX(o.timestamp)
from orders o
inner join menu m
on (o.dishId = m.dishId)
group by m.dishId;

如果你想按更多列分组,你必须在两个地方都添加它们。示例:

select m.dishId, m.dishName, MAX(o.timestamp)
from orders o
inner join menu m
on (o.dishId = m.dishId)
group by m.dishId, m.dishName;

关于mysql - 使用内部联接和分组依据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8086248/

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