SQL 如何使用max函数获取db2中的最后一条记录
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/14679408/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
How to get last record in db2 using max function
提问by Bella
I want to get the last record of that table by using max() function.
我想使用 max() 函数获取该表的最后一条记录。
Query
询问
select oafaci, oaorno, min(obfded) ,max(oblded) from mvxcdtpusd.oohead join mvxcdtpusd.ooline on oacono = obcono and oaorno = oborno and oafaci = obfaci and oawhlo = obwhlo where obitno like '19140%' and OBCONO = 888 group by OAFACI, OAORNO
Result
结果
OAFACI OAORNO FDate LDate
812 0000556215 20130109 20130109
812 0000554203 20130102 20130102
812 0000553769 20121017 20121017
812 0000554204 20130130 20130130
812 0000556214 20121024 20121024
812 0000556216 20130206 20130206
From that result table- i want the below data.
从那个结果表 - 我想要下面的数据。
Desire Result
想要的结果
812 0000556216 20130206 20130206
Need help to get the last record by using max()
需要帮助使用 max() 获取最后一条记录
回答by Gordon Linoff
Why do you needto use the max()
function? If this is homework, you should state that in the question.
为什么需要使用该max()
功能?如果这是家庭作业,你应该在问题中说明。
The best way to get the last record is something like:
获得最后一条记录的最佳方法是:
select *
from t
order by date
fetch first 1 row only
回答by John Woo
Trythis query,
试试这个查询,
SELECT *
FROM tablename
WHERE OAFACI = 812 AND
OAORNO = (SELECT MAX(OAORNO)
FROM tableName
WHERE OAFACI = 812)
UPDATE
更新
SELECT a.*
FROM tableName a
INNER JOIN
(
SELECT OAFACI, MAX(FDATE) max_date
FROM tableName
GROUP BY OAFACI
) b ON a.OAFACI = b.OAFACI AND
a.FDATE = b.max_date
-- WHERE a.OAFACI = 812