获取最新版本更改时间戳 SQL Server

VK_217

我有以下记录集,我想获取上次版本更改的时间戳。

id    ver       date_create
123   1.0.9.8   2016-04-07 12:36:26.567
123   1.0.9.8   2016-03-25 09:10:26.303
123   1.0.9.8   2016-03-25 08:50:42.553
123   1.0.9.8   2016-03-24 11:09:47.620
123   1.0.9.8   2016-03-12 21:30:47.823
123   1.0.9.8   2016-03-12 13:38:44.950 <-- I have to get this record only
123   1.0.0.4   2016-03-06 20:26:54.477
123   1.0.9.8   2016-03-06 16:25:28.790
123   1.0.0.4   2016-03-03 21:41:35.807
123   1.0.0.4   2016-03-02 19:00:30.257
123   1.0.9.8   2016-03-02 18:24:42.060
123   1.0.0.4   2016-02-29 08:04:43.367

我有以下查询,我可以获得最大版本,然后是滞后。但是我不知道如何获得最小(时间戳)

SELECT id,ver,date_create,LAG(date_create) OVER (ORDER BY date_create DESC) AS lag
FROM mytable 
ORDER BY date_create DESC

输出

123    1.0.9.8  2016-05-10 07:13:55.070     NULL
123    1.0.0.4  2016-03-06 20:26:54.477     2016-03-12 13:38:44.950 <-- I got the timestamp using the lag

期望输出

123    1.0.9.8  2016-03-12 13:38:44.950
VK_217

解决方案。获取每个版本的每个版本和最大日期。还给每一行一个数字。接下来获取具有最大日期的版本,row_no=2,并获取该版本以上的所有行,最后获取最小日期。

;WITH meter_versions AS
(
    SELECT  id, ver, date_create = MAX(date_create), row_no = ROW_NUMBER() OVER (PARTITION BY id ORDER BY MAX(date_create) DESC)
    FROM mytable
    GROUP BY id, ver
)
SELECT a.id,a.ver, date_create = MIN(a.date_create)
FROM meter_versions
JOIN mytable a
ON  a.id = meter_versions.id
AND a.date_create > meter_versions.date_create
WHERE meter_versions.row_no = 2 
GROUP BY a.id,a.ver

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如果基于三列的记录与最新版本的记录不匹配,是否可以在SQL Server中插入记录?

来自分类Dev

在SQL中获取特定记录列表的最新版本的最佳方法

来自分类Dev

无需安装Access数据库引擎,将最新版本的Excel数据(如2013)上传到SQL Server表中

来自分类Dev

按两列分组时获取第一个记录更改时间戳 SQL Server

来自分类Dev

Hopw确保您正在使用Report Server的最新版本的SSRS Report

来自分类Dev

如何在ubuntu上更新最新版本的Parse Server

来自分类Dev

使用SQL有效查询记录的最新版本

来自分类Dev

如何使用联接在SQL Server中基于时间戳获取最新记录

来自分类Dev

获取最新版本的mono

来自分类Dev

获取最新版本的mono

来自分类Dev

Gajim - 获取最新版本

来自分类Dev

将信息存储在辅助表中后,如何查询SQL页面的最新版本?

来自分类Dev

SQL显示与客户端ID匹配的所有结果,但仅显示每个实例的最新版本

来自分类Dev

在SQL Server中使用触发器来更新版本

来自分类Dev

PySpark:时间戳在导出到 SQL Server 时发生更改

来自分类Dev

删除所有但最新版本-无时间戳

来自分类Dev

在SQL Server中获取重叠时间戳的不同行

来自分类Dev

sql记录获取最新记录-SQL Server

来自分类Dev

将Ubuntu Server升级到最新版本也会更新PHP吗?这有什么问题吗?

来自分类Dev

将Ubuntu Server升级到最新版本也会更新PHP吗?这有什么问题吗?

来自分类Dev

可以在Windows XP SP 2上安装带有svn 1.8的Visual Svn Server的最新版本是什么?

来自分类Dev

我想将我的sonarqube server4.1升级到最新版本的sonarqube 5.1吗?

来自分类Dev

SQL Server 版本冲突

来自分类Dev

Oracle时间戳到SQL Server DateTime

来自分类Dev

SQL Server:PIVOT时间戳和计算

来自分类Dev

SQL Server时间戳数据类型

来自分类Dev

SQL Server中的时间戳混乱

来自分类Dev

SQL Server中的当前时间戳

来自分类Dev

SQL Server时间相关

Related 相关文章

  1. 1

    如果基于三列的记录与最新版本的记录不匹配,是否可以在SQL Server中插入记录?

  2. 2

    在SQL中获取特定记录列表的最新版本的最佳方法

  3. 3

    无需安装Access数据库引擎,将最新版本的Excel数据(如2013)上传到SQL Server表中

  4. 4

    按两列分组时获取第一个记录更改时间戳 SQL Server

  5. 5

    Hopw确保您正在使用Report Server的最新版本的SSRS Report

  6. 6

    如何在ubuntu上更新最新版本的Parse Server

  7. 7

    使用SQL有效查询记录的最新版本

  8. 8

    如何使用联接在SQL Server中基于时间戳获取最新记录

  9. 9

    获取最新版本的mono

  10. 10

    获取最新版本的mono

  11. 11

    Gajim - 获取最新版本

  12. 12

    将信息存储在辅助表中后,如何查询SQL页面的最新版本?

  13. 13

    SQL显示与客户端ID匹配的所有结果,但仅显示每个实例的最新版本

  14. 14

    在SQL Server中使用触发器来更新版本

  15. 15

    PySpark:时间戳在导出到 SQL Server 时发生更改

  16. 16

    删除所有但最新版本-无时间戳

  17. 17

    在SQL Server中获取重叠时间戳的不同行

  18. 18

    sql记录获取最新记录-SQL Server

  19. 19

    将Ubuntu Server升级到最新版本也会更新PHP吗?这有什么问题吗?

  20. 20

    将Ubuntu Server升级到最新版本也会更新PHP吗?这有什么问题吗?

  21. 21

    可以在Windows XP SP 2上安装带有svn 1.8的Visual Svn Server的最新版本是什么?

  22. 22

    我想将我的sonarqube server4.1升级到最新版本的sonarqube 5.1吗?

  23. 23

    SQL Server 版本冲突

  24. 24

    Oracle时间戳到SQL Server DateTime

  25. 25

    SQL Server:PIVOT时间戳和计算

  26. 26

    SQL Server时间戳数据类型

  27. 27

    SQL Server中的时间戳混乱

  28. 28

    SQL Server中的当前时间戳

  29. 29

    SQL Server时间相关

热门标签

归档