Oracle SQL从加入另一个表时获取最大日期值

时间:2014-06-12 03:07:37

标签: sql oracle

我有一个表结构,我可以在一对多关系中记录多个日期,并需要检索表中的MAX日期值。任何人都可以建议执行连接以从表中获取MAX日期值的最佳推荐方法是什么?特别是在下面的代码中,我想调整此查询以检索t.TimeEst字段的最大日期值。

    SELECT
    a.VolumeID "WFID",
    a.Manager,
    t.TimeEst,
    t.SALTRecordedBy,
    t.SALTRecordedDate

   FROM 
   ctxAssistanceWF a

   JOIN ctxAssistanceSaltWF t
   ON a.VolumeID=t.SaltWFID

   WHERE
   a.RowSeqNum=1
   AND TO_CHAR(t.SALTRecordedDate, 'MM/DD/YYYY') = TO_CHAR(SYSDATE, 'MM/DD/YYYY')

1 个答案:

答案 0 :(得分:1)

使用GROUP BY以便您可以使用汇总MAX功能:

SELECT a.VolumeID "WFID"
     , a.Manager
     , t.TimeEst
     , t.SALTRecordedBy
     , MAX(t.SALTRecordedDate)
FROM ctxAssistanceWF a JOIN ctxAssistanceSaltWF t ON a.VolumeID = t.SaltWFID  
WHERE a.RowSeqNum = 1  
GROUP BY a.VolumeID
       , a.Manager
       , t.TimeEst
       , t.SALTRecordedBy