我有一个带有列的 InnoDB 表“idtimes”(MySQL 5.0.22-log)
`id` int(11) NOT NULL,
`time` int(20) NOT NULL, [...]
Run Code Online (Sandbox Code Playgroud)
使用复合唯一键
UNIQUE KEY `id_time` (`id`,`time`)
Run Code Online (Sandbox Code Playgroud)
所以每个 id 可以有多个时间戳,每个时间戳可以有多个 id。
我正在尝试设置一个查询,在其中获取所有条目以及每个条目的下一个更大时间(如果存在),因此它应该返回,例如:
+-----+------------+------------+
| id | time | nexttime |
+-----+------------+------------+
| 155 | 1300000000 | 1311111111 |
| 155 | 1311111111 | 1322222222 |
| 155 | 1322222222 | NULL |
| 156 | 1312345678 | 1318765432 |
| 156 | 1318765432 | NULL |
+-----+------------+------------+
Run Code Online (Sandbox Code Playgroud)
现在我到目前为止:
SELECT l.id, l.time, r.time FROM
idtimes AS l LEFT JOIN idtimes …Run Code Online (Sandbox Code Playgroud)