【发布时间】:2022-01-28 11:27:37
【问题描述】:
我有一个mysql表集群:
Date user Cluster
01/01/21 1 A
01/01/21 2 B
01/01/21 3 C
02/01/21 1 A
02/01/21 2 A
02/01/21 3 B
我想分析每个日期用户向某些集群的迁移,所需的输出是:
Date user From To
01/01/21 1 A A
01/01/21 2 B B
01/01/21 3 C C
02/01/21 1 A A
02/01/21 2 B A
02/01/21 3 C B
我试过了,但我不知道如何获取上一个日期的集群(到列)
SELECT date , user, cluster as from , (
select Cluster where date = date -1 )
FROM Cluster
group by date , cluster
【问题讨论】:
-
日期真的是公布的形式吗?
-
这两个日期是固定的吗?总是两个日期吗?每个用户总是两个条目吗?
-
'dont attention to date' - 必须有办法找到以前的记录……你用的是什么版本的 mysql?
-
我每天修改问题
-
使用旧的、不受支持的软件版本通常是个坏主意。使用 MySQL 时,是否使用 MySQL 8 或旧版本会有很大的不同,因为添加了重要的特性(即 CTE 和分析/窗口函数)。