我想从两个表中选择记录。我想为此编写查询,但我无法写

时间:2018-01-11 14:54:55

标签: mysql sql

我有两个表,一个包含updated_at(可以是多行)datetime,第二个包含started_date和stopped_date(一个或多个记录)。

我想选择updated_at日期,不应该在started_date和stopped_date之间。

提前致谢。

我看到了另一个问题"检查MySQL和#34;中日期范围的重叠。

但这不是我想要的。

USER_LOCATION +---+-----+-----+---------------------+ |id | lat | lon | updated_date | +---+-----+-----+---------------------+ | 1 |16.45|75.45|2018-01-09 12:50:57 | | 2 |16.85|75.15|2018-01-09 12:53:45 | | 3 |16.78|75.25|2018-01-09 12:55:48 | | 4 |16.43|75.35|2018-01-09 13:57:35 | | 5 |16.48|75.47|2018-01-09 14:59:30 | | 6 |16.49|75.49|2018-01-10 05:59:58 | | 7 |16.50|75.50|2018-01-10 07:35:15 | +---+-----+-----+---------------------+

location_blocked_datetime

+---+--------------------+---------------------+ |id | start_date | stopped_date | +---+--------------------+---------------------+ | 1 |2018-01-09 05:55:48 | 2018-01-09 07:55:48 | | 2 |2018-01-09 12:51:48 | 2018-01-09 12:56:48 | | 3 |2018-01-10 04:30:48 | 2018-01-04 06:55:48 | +---+--------------------+---------------------+

我想从user_location表中选择位置,其中up​​dated_date不应该在start_date和stopped_date.start_date中,并且停止日期不是固定的并且包含多于1条记录

上述查询的结果应如下所示: -

如果我想在2018-01-09选择位置

以上查询结果

+---+-----+-----+---------------------+ |id | lat | lon | updated_date | +---+-----+-----+---------------------+ | 1 |16.45|75.45|2018-01-09 12:50:57 | | 2 |16.43|75.35|2018-01-09 13:57:35 | | 3 |16.48|75.47|2018-01-09 14:59:30 | +---+-----+-----+---------------------+

0 个答案:

没有答案