【发布时间】:2016-06-10 21:25:39
【问题描述】:
我想根据季节日期显示价格。
示例:
电影有不同的价格,根据日期确定
season_1 = 2016-05-01 - 2016-08-31 价格为 100 美元
season_2 = 2016-09-01 - 2017-04-31 价格为 50 美元
我在表格中有两个日期
season_tbl:
id | start_date | end_date | name
--------------------------------------------------
1 | 2016-05-01 | 2016-08-31 | season_1
2 | 2016-09-01 | 2017-04-30 | season_2
movies_price_tbl:
id | season_id | name | price | movie
------------------------------------------------------------
1 | 1 | Gladiator movie | 100$ | 1
2 | 2 | Gladiator movie | 50% | 1
我的期望:
当用户在搜索中输入 start 2016-06-01 end 2016-07-30 并选择该日期的电影放映价格 ID。在这种情况下,显示 season_1 价格100$。
如果用户输入 start 2016-09-23 end 2017-01-21 show season_2 price
我尝试但不工作:
WHERE m.movie_id = 1 AND s.start_date <= '2016-05-01' AND s.end_date >= '2016-07-20'
【问题讨论】:
-
start_date 和 end_date 列的数据类型是什么?
-
列的类型首先是
date,我将其更改为varchar -
现在在 db 中是 varchar 吗? ..您的查询得到什么结果?显示您使用的所有查询代码..