【发布时间】:2013-07-18 21:07:34
【问题描述】:
pass_id retry_id
1 1
1 2
2 1
2 2
2 3
3 1
3 2
需要在 MAX(pass_id) 内提取 MAX(retry_id) 的记录。
pass_id retry_id
3 2
提前致谢!
【问题讨论】:
标签: sql oracle max multiple-conditions
pass_id retry_id
1 1
1 2
2 1
2 2
2 3
3 1
3 2
需要在 MAX(pass_id) 内提取 MAX(retry_id) 的记录。
pass_id retry_id
3 2
提前致谢!
【问题讨论】:
标签: sql oracle max multiple-conditions
最简单的方法是使用order by 并只选择一行:
select t.pass_id, t.retry_id
from (select t.*
from t
order by pass_id desc, retry_id desc
) t
where rownum = 1
Here 是一个 SQLFiddle。
【讨论】:
SELECT *
FROM MyTable
WHERE
retry_id = (Select MAX(retry_id) FROM MyTable) AND
pass_id = (Select MAX(pass_id) FROM MyTable)
【讨论】:
对 oracle 语法不肯定,但类似
SELECT MAX(retry_ID)
FROM Table
WHERE Pass_ID = (SELECT MAX(Pass_ID)
FROM Table)
【讨论】: