我正在尝试建立一个查询,该查询将找到日期范围并将其与另一个值组合在一起。插入的日期时间之间可以是秒或天之间。
它将在运行版本8的MySQL服务器上的存储过程中。
我的桌子看起来像这样:
inserted | ref_id | state
2019-09-16 18:01:00 | 1 | 0
2019-09-16 18:02:00 | 1 | 0
2019-09-16 18:03:00 | 1 | 1
2019-09-16 18:04:00 | 1 | 1
2019-09-16 18:05:00 | 1 | 0
2019-09-16 18:06:00 | 1 | 0
2019-09-16 18:01:00 | 2 | 1
2019-09-16 18:02:00 | 2 | 1
2019-09-16 18:03:00 | 2 | 1
创建表格:
CREATE TABLE my_table (
id INT NOT NULL AUTO_INCREMENT,
inserted DATETIME NULL,
ref_id INT NULL,
state TINYINT NULL,
PRIMARY KEY (id)
);
INSERT INTO my_table
(inserted, ref_id, state)
VALUES
("2019-09-16 18:01:00", 1, 0),
("2019-09-16 18:02:00", 1, 0),
("2019-09-16 18:03:00", 1, 1),
("2019-09-16 18:04:00", 1, 1),
("2019-09-16 18:05:00", 1, 0),
("2019-09-16 18:06:00", 1, 0),
("2019-09-16 18:01:00", 2, 1),
("2019-09-16 18:02:00", 2, 1),
("2019-09-16 18:03:00", 2, 1)
所需的输出(其中ref_id = 1):
from | to | state
2019-09-16 18:01:00 | 2019-09-16 18:02:00 | 0
2019-09-16 18:03:00 | 2019-09-16 18:04:00 | 1
2019-09-16 18:05:00 | 2019-09-16 18:06:00 | 0