下表有三栏。让我们说 table1
使用以下数据
+---------+-----------------------+----------+
| ID | E_Date | TimeDiff |
+---------+-----------------------+----------+
| 7390709 | 2020-03-26 22:25:30 | 456 |
+---------+-----------------------+----------+
| 7390707 | 2020-03-26 16:25:30 | 3 |
+---------+-----------------------+----------+
| 7390706 | 2020-03-26 19:25:30 | 3 |
+---------+-----------------------+----------+
| 7390701 | 2020-03-26 16:23:53 | 512419 |
+---------+-----------------------+----------+
| 7390696 | 2020-03-26 14:33:08 | 111034 |
+---------+-----------------------+----------+
| 7390681 | 2020-03-20 15:25:30 | 2 |
+---------+-----------------------+----------+
| 7390680 | 2020-03-20 16:25:30 | 63867 |
+---------+-----------------------+----------+
| 7390679 | 2020-03-20 13:25:30 | 63867 |
+---------+-----------------------+----------+
| 7390675 | 2020-03-20 12:30:46 | 63867 |
+---------+-----------------------+----------+
假设另一个表有4列 table2
有以下数据
+-----------------------+---------------------+--------+------+
| Start_Date | End_Date | Typ_ID | Diff |
+-----------------------+---------------------+--------+------+
| 2020-03-26 18:00:01 | 2020-03-26 21:00:00 | 3 | 180 |
+-----------------------+---------------------+--------+------+
| 2020-03-26 13:40:01 | 2020-03-26 17:30:00 | 1 | 230 |
+-----------------------+---------------------+--------+------+
| 2020-03-26 10:30:01 | 2020-03-26 13:30:00 | 1 | 180 |
+-----------------------+---------------------+--------+------+
| 2020-03-26 06:10:01 | 2020-03-26 10:00:00 | 1 | 230 |
+-----------------------+---------------------+--------+------+
| 2020-03-20 18:00:01 | 2020-03-20 21:00:00 | 1 | 180 |
+-----------------------+---------------------+--------+------+
| 2020-03-20 13:40:01 | 2020-03-20 17:30:00 | 3 | 230 |
+-----------------------+---------------------+--------+------+
| 2020-03-20 10:30:01 | 2020-03-20 13:30:00 | 1 | 180 |
+-----------------------+---------------------+--------+------+
| 2020-03-20 06:10:01 | 2020-03-20 10:00:00 | 1 | 230 |
+-----------------------+---------------------+--------+------+
我想实现的是在表2中检查 start_date
以及 End_Date
哪里 typ_Id = 1
从表1中 E_Date
在表2中 Start_Date
以及 End_Date
.
对于id 7390706、73906817390680,e\U日期在表2的开始日期和结束日期范围内,其中类型id=3;对于id 7390709,不存在开始日期和结束日期,因此这些行已从最终结果中排除。
所以最后一张table必须是这样的。
+---------+-----------------------+----------+
| ID | E_Date | TimeDiff |
+---------+-----------------------+----------+
| 7390707 | 2020-03-26 16:25:30 | 3 |
+---------+-----------------------+----------+
| 7390701 | 2020-03-26 16:23:53 | 512419 |
+---------+-----------------------+----------+
| 7390696 | 2020-03-26 14:33:08 | 111034 |
+---------+-----------------------+----------+
| 7390679 | 2020-03-20 13:25:30 | 63867 |
+---------+-----------------------+----------+
| 7390675 | 2020-03-20 12:30:46 | 63867 |
+---------+-----------------------+----------+
我仍在学习,所以任何帮助都将不胜感激。
http://sqlfiddle.com/#!18/6eb43年
1条答案
按热度按时间nnt7mjpx1#
试试下面的演示。
输出: