【发布时间】:2020-03-15 12:50:52
【问题描述】:
问题:
我有一个记录foo 中的数据行的表。每次更新行时,都会插入一个新行以及一个修订号。表格如下:
id rev field
1 1 test1
2 1 fsdfs
3 1 jfds
1 2 test2
请注意,表中的最后一条记录是第一行的较新版本。
有没有人知道查询最新版本的行和特定版本的记录的有效方法?例如,rev=2 的查询将返回第 2、3 和第 4 行(虽然不是替换的第 1 行),而对 rev=1 的查询会产生 rev
我实际上不确定这在 SQL Server 中是否可行...
我不希望以迭代的方式返回结果。
【问题讨论】:
-
你用的是什么版本的sql server?
-
MS SQL 2008 R2,但理想情况下我想生成一个不依赖于任何 sql server 细节的查询。
-
为什么这个问题被标记为'recursion'和'rcs'?
-
我刚刚注意到您的“在重复 ID 的情况下”子句 - 您能对此进行扩展吗?不知道是什么意思。
-
此处可能存在重复问题。请阅读那里的讨论,因为它很有教育意义:stackoverflow.com/questions/121387/…
标签: sql sql-server tsql