首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于开始日期和结束日期之间的日期的MySQL显示值

基于开始日期和结束日期之间的日期的MySQL显示值
EN

Stack Overflow用户
提问于 2015-11-17 09:06:58
回答 3查看 67关注 0票数 2

我试图建立一个简单的房屋预订系统,我的数据库就像:

代码语言:javascript
复制
TABLE HOUSES
id | name
============
1  | house_1
2  | house_2

TABLE RESERVATIONS
id | id_house | date_start | date_end
=====================================
1  | 2        | 2015-11-02 | 2015-11-10
2  | 1        | 2015-10-02 | 2015-10-15

我也不知道如何在新订房的基础上展示预订的房子。

id_house 2 2015-11-05 to 2015-11-20

系统应输出:众议院数字。2是在今天预订的。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-11-17 09:20:19

输入:新预订的日期范围(2015-11-05至2015-11-20)

Output:已为这些日期保留的房屋列表

查询:

代码语言:javascript
复制
SELECT HOUSES.name, HOUSES.id, RESERVATIONS.date_start, RESERVATIONS.date_end
FROM RESERVATIONS
LEFT JOIN HOUSES ON HOUSES.id=RESERVATIONS.id_house 
WHERE
  RESERVATIONS.date_start < '2015-11-20'
  AND
  RESERVATIONS.date_end > '2015-11-20'

类似的事情,但这取决于你的逻辑(我没有完全理解)。

希望这能有所帮助。

票数 0
EN

Stack Overflow用户

发布于 2015-11-17 09:53:36

请考虑以下几点:

代码语言:javascript
复制
CREATE TABLE reservations
(id INT NOT NULL
,id_house INT NOT NULL
,date_start DATE
,date_end DATE
);

INSERT INTO reservations VALUES
(1,2,'2015-11-02','2015-11-10'),
(2,1,'2015-10-02','2015-10-15');

SELECT * 
  FROM reservations x 
  LEFT 
  JOIN (SELECT '2015-11-05' my_start,'2015-11-20' my_end) y 
    ON y.my_start < x.date_end 
   AND y.my_end > x.date_start;
+----+----------+------------+------------+------------+------------+
| id | id_house | date_start | date_end   | my_start   | my_end     |
+----+----------+------------+------------+------------+------------+
|  1 |        2 | 2015-11-02 | 2015-11-10 | 2015-11-05 | 2015-11-20 |
|  2 |        1 | 2015-10-02 | 2015-10-15 | NULL       | NULL       |
+----+----------+------------+------------+------------+------------+
票数 2
EN

Stack Overflow用户

发布于 2015-11-17 09:12:47

试试这个..。

代码语言:javascript
复制
SELECT ho.*,re.* FROM tbl_house AS ho LEFT JOIN tbl_reservation
WHERE now() >= date_start and now() <= date_end

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33752904

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档