【发布时间】:2018-07-20 14:38:29
【问题描述】:
我在这里在黑暗中寻找。我什至不确定我的想法是否真的存在。
我有一个基于事务的数据库,其中包含对记录的一系列更新。每行包含对一个或多个列的更新。有没有办法获得整个记录的最终状态。例如:
+-----------+---------+---------+--------+---------+
| update_id | country | status | amount | device |
+-----------+---------+---------+--------+---------+
| 1 | UK | valid | 100 | iPhone |
| 2 | | invalid | | |
| 3 | | | 200 | Android |
| 4 | DE | | 300 | |
| 5 | | valid | | Android |
| 6 | | | 50 | |
| 7 | FR | | 350 | |
| 8 | | | | iPhone |
+-----------+---------+---------+--------+---------+
这里的最终状态是:
FR | valid | 350 | iPhone
有没有一种方法可以在一个查询或其他方法中获得(但对于数百万条唯一记录和数百列)?
目前我能想到的唯一方法是使用游标并更新最终状态表,但这需要很长时间。
【问题讨论】:
-
您使用的是哪个版本的 SQL Server?
-
SQL Server 2016,但可以升级到 2017。
标签: sql-server tsql sql-server-2016