Sql 如何从ORACLE中的两个不同表中获取两个字段的最大值

Sql 如何从ORACLE中的两个不同表中获取两个字段的最大值,sql,oracle,max,union-all,Sql,Oracle,Max,Union All,我有一个过程,根据成功或失败在两个表中打印日志: log_mig log_mig_error 我想得到最多两个同名字段: uid_proc 对于添加当前进程的连续进程,这是我到目前为止所做的查询: (SELECT MAX(uid_proc) FROM LOG_MIG) UNION ALL (SELECT MAX(uid_proc) FROM log_mig_error) 这是输出: MAX(UID_PROC) 00000000000000000008 0000000000000000000

我有一个过程,根据成功或失败在两个表中打印日志:

log_mig
log_mig_error
我想得到最多两个同名字段:

uid_proc
对于添加当前进程的连续进程,这是我到目前为止所做的查询:

(SELECT MAX(uid_proc) FROM LOG_MIG) UNION ALL (SELECT MAX(uid_proc) FROM log_mig_error)
这是输出:

MAX(UID_PROC)
00000000000000000008
00000000000000000009
但我只想要最后一排,我试过了

SELECT      (SELECT MAX(uid_proc) FROM LOG_MIG) UNION ALL (SELECT MAX(uid_proc) FROM log_mig_error) AS campo 
FROM        log_mig 
INNER JOIN  log_mig_error
WHERE       (log_mig.uid_proc = log_mig_error.uid_proc);
如果没有成功,我可能会创建一个视图并从中获得最大值,但我没有创建任何内容的权限,我必须在运行时一步完成此操作,如果我理解正确,我将非常感谢任何帮助:

select MAX(uid_proc) from(
(SELECT MAX(uid_proc) as uid_proc FROM LOG_MIG) UNION ALL (SELECT MAX(uid_proc) FROM log_mig_error)
)