gpt4 book ai didi

mysql - 内部连接与右表的空结果

转载 作者:可可西里 更新时间:2023-11-01 07:47:11 26 4
gpt4 key购买 nike

我有2张 table ,餐厅和订单,每个餐厅可以有很多订单

restaurants table
id
name


orders table
id
restaurant_id
date

我需要找到在某个日期范围内没有订单的餐厅。在订单表中,我将订单日期保存为 - 每行代表一天。因此,我需要进行内部联接,但订单表中没有结果。比如,我需要找到在 2013-08-09 到 2013-08-11 日期范围内免费的餐厅。我怎样才能做到这一点?如何进行查询,根据日期范围给出订单表中没有匹配项的餐厅?

实际上,我可以将所有日期保存在状态为 not_ordered 的订单表中,并使用 not_ordered = true 条件进行内部连接,但在那种情况下,我将不得不使用以下内容填充所有表日期,这对我来说不是一件好事。

谢谢

最佳答案

select r.*
from restaurant r
left join orders o on r.id = o.restaurant_id and o.date between '...' and '...'
where o.id is null;

或者您可以使用 not exists 来做到这一点,如其他答案所示。

关于mysql - 内部连接与右表的空结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18136113/

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