从数据库表中仅获取一些最新值

时间:2013-02-06 05:43:32

标签: c# sql-server versioning

我想问一些事情。

这是表格:

A_ID    B_ID    C_ID    Version E_ID    F_ID

1009    2882000 mi7       1      200    01.mi7.LBUS.BSMS5.1360062644 
1009    2882000 mi7       1      200    02.mi7.LBUS.BSMS5.1360062656 
1009    2882000 mi7       1     -130    03.mi7.LBUS.BSMS5.1360062670 
1009    2882000 mi7       2      200    01.mi7.LBUS.BSMS5.1360062681 
1009    2882000 mi7       2      200    02.mi7.LBUS.BSMS5.1360062689

我想从表中获取E_ID和F_ID的所有值,最新版本是指版本列,版本列将增加参考其他进程,我希望始终获得最新值

我希望输出为:

Version    E_ID          F_ID
2        200    01.mi7.LBUS.BSMS5.1360062681 
2        200    02.mi7.LBUS.BSMS5.1360062689

我该怎么办?

1 个答案:

答案 0 :(得分:1)

尝试:

SELECT E_ID, F_ID
FROM [the table]
WHERE [Version] = (SELECT MAX([Version]) FROM [the table])

在您的情况下,这将返回Version = 2的所有行。