【发布时间】:2021-12-02 00:17:26
【问题描述】:
我有下表,其中状态 0 用于非活动设备,状态 1 用于活动设备。
CREATE TABLE `devices` (
`id` int NOT NULL AUTO_INCREMENT,
`state` int unsigned NOT NULL,
`dt` datetime NOT NULL,
`name` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
INSERT INTO devices (state,name,dt) VALUES (1,'Alfa','2021-10-12 11:30:00');
INSERT INTO devices (state,name,dt) VALUES (0,'Alfa','2021-10-12 11:40:00');
INSERT INTO devices (state,name,dt) VALUES (1,'Alfa','2021-10-12 11:50:00');
INSERT INTO devices (state,name,dt) VALUES (1,'Alfa','2021-10-12 12:00:00');
INSERT INTO devices (state,name,dt) VALUES (1,'Beta','2021-10-12 11:30:00');
INSERT INTO devices (state,name,dt) VALUES (0,'Beta','2021-10-12 11:40:00');
INSERT INTO devices (state,name,dt) VALUES (0,'Beta','2021-10-12 11:50:00');
INSERT INTO devices (state,name,dt) VALUES (0,'Beta','2021-10-12 12:00:00');
http://sqlfiddle.com/#!9/8ea07de/3
查询的预期结果是:
Name State FROM TO
Alfa 1 '2021-10-12 11:50:00' '2021-10-12 12:00:00'
Beta 0 '2021-10-12 11:40:00' '2021-10-12 12:00:00'
目前我只能获取“名称”、“到”和“状态”列。 是否可以为 MySQL 5.6 找到具有预期结果(“来自”列)的查询?
【问题讨论】:
标签: mysql sql group-by sequence