【发布时间】:2016-05-21 20:30:06
【问题描述】:
所以我想选择所有具有不同contractNo和最大版本号的记录。
所以我有一张这样的桌子:
| username | contractNo | versionNo |
|===================================|
| lucian | 1 | 1 |
| john | 2 | 1 |
| lucian | 2 | 1 |
| kris | 3 | 1 |
| lucian | 1 | 2 |
| david | 4 | 1 |
| lucian | 1 | 4 |
| adam | 5 | 1 |
| lucian | 2 | 2 |
| kris | 3 | 2 |
| lucian | 3 | 1 |
| lucian | 1 | 3 |
| lucian | 1 | 5 |
| lucian | 4 | 1 |
我想选择以下记录:
| username | contractNo | versionNo |
|===================================|
| lucian | 1 | 5 |
| lucian | 2 | 2 |
| lucian | 3 | 1 |
| lucian | 4 | 1 |
我有这个查询,但是这只会以按 contractNo 和 versionNo 的降序返回它们。
SELECT username, contractNo, versionNo
FROM contracts
WHERE useremail = 'lucian'
order by contractNo, versionNo desc;
我相信我需要进行某种加入,但我不确定如何。
任何帮助将不胜感激。
【问题讨论】:
-
我不知道那是什么。我正在通过 SQL Developer 运行我的查询,这就是您要问的......?
-
Join 适用于 2 个或更多表,但您只在上面指明了一个。