【发布时间】:2021-12-03 18:35:37
【问题描述】:
我需要根据同一 ID 的“持续时间”列的最大值更新“max_register”列,设置值 = 1,其他值 = 0。
初始表:
Id | duration | max_register
1 | 0 | 0
1 | 7 | 0
1 | 3 | 0
2 | 10 | 0
2 | 5 | 0
2 | 0 | 0
3 | 6 | 0
3 | 5 | 0
3 | 0 | 0
结束表:
Id | duration | max_register
1 | 0 | 0
1 | 7 | 1
1 | 3 | 0
2 | 10 | 1
2 | 5 | 0
2 | 0 | 0
3 | 6 | 1
3 | 5 | 0
3 | 0 | 0
这是一个临时表,有数千个寄存器。所以我不知道是否需要使用光标或类似的东西。
【问题讨论】:
-
你使用的是 mysql 8 还是更早的版本?
-
什么是时态表?你是说临时表吗?
-
我使用的是 SQL 2017
标签: sql sql-server-2017 database-cursor temporal