【问题标题】:Oracle: How do I retrieve the table name when using select all with multiple joinsOracle:使用多连接全选时如何检索表名
【发布时间】:2012-11-09 18:04:17
【问题描述】:

我有一个包含很多连接的查询,使我的总列数超过 1000。为了解决这个限制,我需要使用 select * 而不是手动定义别名。

我想做

SELECT    *
FROM      table0 t0
INNER JOIN table1 t1
ON         t0.field = t1.field
WHERE      rownum < 10

在我的结果中,我需要在列名中定义以下内容

t0.column
t0.column2
t1.column
t1.column2

是否有我缺少的概念或技术来实现这一点?我真的不想依赖现场顺序,因为它可能会改变。

【问题讨论】:

    标签: oracle pdo


    【解决方案1】:

    你可以这样做:

    SELECT t0.column, t0.column2, t1.column, t1.column2, t0.*, t1.* 
    FROM      table0 t0
    INNER JOIN table1 t1
    ON         t0.lm_mst_uid = t1.lm_mst_uid
    WHERE      rownum < 10
    

    【讨论】:

      【解决方案2】:
      SELECT    t0.*, t1.*
      FROM      table0 t0
      INNER JOIN table1 t1
      ON         t0.lm_mst_uid = t1.lm_mst_uid
      WHERE      rownum < 10
      

      【讨论】:

      • 我希望这样的事情会起作用,但这只是返回列名,并没有指定它们来自哪个表。
      【解决方案3】:

      也许你可以给个提示:

      SELECT t1.*, 't1 <-> t2' , t2.*,  't2 <-> t3', t3.*
      

      现在你最终会看到这样的东西:

       t1...................................|           | t2................|           | t3.....................|
       01-02-2012 | ... | More data from t1 | t1 <-> t2 | Some data from t2 | t2 <-> t3 | Now data from t3 | ... |
       01-02-2012 | ... | More data from t1 | t1 <-> t2 | Some data from t2 | t2 <-> t3 | Now data from t3 | ... |
       01-02-2012 | ... | More data from t1 | t1 <-> t2 | Some data from t2 | t2 <-> t3 | Now data from t3 | ... |
       01-02-2012 | ... | More data from t1 | t1 <-> t2 | Some data from t2 | t2 <-> t3 | Now data from t3 | ... |
       01-02-2012 | ... | More data from t1 | t1 <-> t2 | Some data from t2 | t2 <-> t3 | Now data from t3 | ... |
       01-02-2012 | ... | More data from t1 | t1 <-> t2 | Some data from t2 | t2 <-> t3 | Now data from t3 | ... |
      

      您知道't1 &lt;-&gt; t2' 之间的所有内容都属于一个表格。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-11-11
        • 2017-05-02
        • 1970-01-01
        • 2019-08-03
        • 2013-12-05
        • 2010-10-20
        相关资源
        最近更新 更多