gpt4 book ai didi

MySQL : How to select record where begin date and end date between two dates of mysql

转载 作者:行者123 更新时间:2023-11-29 06:51:11 27 4
gpt4 key购买 nike

我需要选择入住日期和退房日期在指定日期范围之间的房价。这些费率根据其条件单独命名。房费取决于所选日期。这是我的代码:

rate_eb

rate_name     rate_starts     rate_ends     rate_discount     rate_min_stay
---------------------------------------------------------------------------
Low Season 2013-05-01 2013-10-31 20 3
High Season1 2013-11-01 2013-12-19 20 4
High Season2 2013-02-21 2013-04-31 20 4
Peak Season 2013-12-20 2014-02-20 20 5

条件是:

  1. 预订必须在 rate_startsrate_ends 之间。
  2. 总停留天数必须大于或等于 rate_min_stay
  3. rate_discount 是另一个表中主费率的折扣百分比。假设主费率为 100,则此预订将应用 80 的费率。

现在,我想从带有日期范围的 rate_db 中获取这些数据 - 尤其是 rate_discount。这是我的 mySQL:

select rate_discount 
from rate_eb
where rate_min_stay<='4'
and reb_starts>='2013-06-19'
and reb_ends<='2013-06-23'

来自上面的代码。我预计 淡季 rate_discount=20 但所有小于或等于 4 的费率都被选中。

现在,请给我建议解决方案。我如何重写我的代码以访问 rate_starts 和 rate_ends 之间的 rate_discount。

最佳答案

我假设访问者可以输入一个时期,而不仅仅是一个日期。如果那个时期的开始日期是淡季而结束日期是旺季会怎样?那么您希望看到哪个汇率?

select rate_discount 
from rate_eb
where rate_min_stay <= abs( datediff( reb_date2, reb_date1 ) )
and reb_date1 between rate_starts and rate_ends
and reb_date2 between rate_starts and rate_ends

我假设 reb_date1 是访问者输入的开始日期,reb_date2 是结束日期。

关于MySQL : How to select record where begin date and end date between two dates of mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15321428/

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