【问题标题】:Union different fields from different tables and return data using refcursor plsql联合来自不同表的不同字段并使用 refcursor plsql 返回数据
【发布时间】:2016-11-17 20:23:29
【问题描述】:

我正在尝试使用 union all 显示多个选择结果:

    SELECT USERNAME, NAME, SURNAME, null as description FROM t1
    union all
    SELECT null as username, null as name, null as surname, description as  company FROM t2

查询返回用户名、姓名、姓氏和描述为空。但是,我想从列不为空的 t2 中获取描述

我希望展示这种情况:

    USERNAME, NAME, SURNAME from t1, description from t2

t1 作为 3 个字段(USERNAME、NAME、SURNAME)和 t2 1 个字段(描述)。

我该怎么做?

【问题讨论】:

  • 在这种情况下,您可以简单地连接两个表。你为什么要选择Union All。这将是一个 cartesion 产品 bt 你会得到你的结果。
  • 你必须以某种方式加入 t1 和 t2。但由于 t1 上的描述为空,而 t2 上 {username,name,surname} 为空。您希望如何匹配两个表中的行?
  • 我无法加入这两个表。我必须合并结果
  • @EmanueleAntico 请更新您的问题以在两个表中包含示例数据以及您想要获得的结果。另外,为什么不能加入这两个表?

标签: plsql union-all


【解决方案1】:

假设您提供的信息最适合您的要求,如下所示。 PS这将产生笛卡尔结果。

SELECT t1.USERNAME, t1.NAME, t1.SURNAME,t2.description
FROM t1
Join 
t2
On t2.description is not null

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-16
    • 1970-01-01
    • 2019-06-09
    • 1970-01-01
    相关资源
    最近更新 更多