gpt4 book ai didi

php - 如何从给定的日期范围内找到确切的季节和日期?

转载 作者:行者123 更新时间:2023-11-29 03:45:02 26 4
gpt4 key购买 nike

我需要这个来计算租车价格。汽车价格因季节而异。

我有一个这样的 season_dates 表

id    slug    start                  end 
1 low 2011-01-01 00:00:00 2011-04-30 00:00:00
2 mid 2011-05-01 00:00:00 2011-06-30 00:00:00
3 high 2011-07-01 00:00:00 2011-08-31 00:00:00
4 mid 2011-09-01 00:00:00 2011-10-31 00:00:00
5 low 2011-11-01 00:00:00 2011-12-31 00:00:00

用户选择日期,例如:

start_day   08/20   end_day  08/25

我的查询是这样的:

SELECT * from arac_donemler
where DATE_FORMAT(start, '%m/%d') <= '08/20'
and DATE_FORMAT(end, '%m/%d') >= '08/25'

这给了我正确的旺季。

但我无法处理的是:如果用户选择 2 个季节之间的日期范围怎么办?

例如从 8 月 20 日到 9 月 5 日。

这次我要找出日期范围属于哪个季节?我必须计算每个季节有多少天?

对于上面的例子,8 月 31 日结束的旺季。所以 31-20 = 旺季 11 天,中季 5 天。

我如何提供这种分离?

我希望我能解释一下。

我尝试了很多东西,比如在里面加入表,但都没有成功。

最佳答案

我会让其他人用正确的方法在 SQL 中进行日期比较(你的方法几乎肯定会破坏表的索引),但首先,你可以获得相关

select * from arac_donemler
where end >= [arrival-date]
and start <= [departure-date]

然后您应该在业务逻辑中而不是在数据库查询中完成其余的处理(计算出每个季节有多少天等等)。

关于php - 如何从给定的日期范围内找到确切的季节和日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7134160/

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