【问题标题】:How to merge column instance_name from instance table and status from rman_backup_job_details table using UNION?如何使用 UNION 合并实例表中的 instance_name 列和 rman_backup_job_details 表中的状态?
【发布时间】:2017-08-04 07:43:41
【问题描述】:

我需要使用 UNION 合并 ORACLE 12c 数据库中两个不同表的列。有可能吗?

select instance_name from v$instance

select input_type, status, start_time, end_time from V$RMAN_BACKUP_JOB_DETAILS

我需要这样的输出

INSTANCE_NAME    INPUT_TYPE    STATUS              START_TIME
---------------- ------------- ----------------------- --------------
END_TIME
--------------
 orcl        DB FULL       COMPLETED           08/03/17 18:39
 08/03/17 18:41

上面的输出应该通过多选查询使用UNION关键字可以吗? .提前谢谢..

【问题讨论】:

  • 请只使用相关的产品标签,不要随意使用!
  • 而且输出看起来更像是一个连接而不是一个联合。
  • 添加一些示例表数据(每个表几行),以及预期的结果。 (全部为格式化文本。)

标签: sql oracle union


【解决方案1】:

您需要一个简单的CROSS JOIN。见下文:

SELECT distinct   
       a.instance_name,
       jb.input_type,
       jb.status,
       jb.start_time,
       jb.end_time
  FROM V$RMAN_BACKUP_JOB_DETAILS jb 
  CROSS JOIN v$instance a

【讨论】:

  • 谢谢它的工作。但是我需要在写入 txt 文件或 html 文件时删除重复的标题。在查询本身中是否可以删除重复的标题?
  • 是的。您可以在 select 子句中添加 distinct。查看更新
  • INSTANCE_NAME INPUT_TYPE STATUS START_TIM END_TIME - ------------- - ---------- --------- --------- orcl DB 已完成 25-JUL-17 25 -JUL-17 INSTANCE_NAME INPUT_TYPE STATUS START_TIM END_TIME ---- ------------- ----- ------------------ --------- --------- orcledb DB 已完成 31-JUL-17 31-JUL-17 orcledb DB 完全完成 01-AUG-17 01-AUG-17
  • 我需要删除重复的标题是 INSTANCE_NAME INPUT_TYPE STATUS START_TIM END_TIME
  • 好吧,你可以做set heading off,但它不会很好地带来第一个标题。所以你需要通过某种方式编写一次标题
猜你喜欢
  • 2013-04-15
  • 1970-01-01
  • 1970-01-01
  • 2022-12-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-28
相关资源
最近更新 更多