比如现在有两个表 字段名完全一样。
有没有什么办法,能显示出两个表的所有数据,并且新加一列标示该行数据属于哪个表呢?
比如
表aid    name
------------
1     li
2     wang表b
id    name
------------
3     zhao
4     sun
结果类似这样
id    name    from
-------------------
1     li       a
2     wang     a
3     zhao     b
4     sun      b
谢谢大家

解决方案 »

  1.   

    SELECT id, name, 'a' as "from"
      FROM a
     UNION ALL
    SELECT id, name, 'b' as "from"
      FROM b
      

  2.   

    SELECT id, name, 'a' as tabname "from" 
      FROM a 
    UNION ALL 
    SELECT id, name, 'b' as tabname "from" 
      FROM b 
      

  3.   

    知识点:
    1、union all
    2、'b'  as "from"
    第2点有疑问: 前一个 'b' 用单引号括起来,后一个"from" 为什么要用双引号呢?  试过了,调过来是不可以,这有什么规律吗?  请指点。
      

  4.   

    我没测试过:我认为他from加双引号.可能就是他加错了,可以不加.或者from是关键子,加引号让ORACLE来识别
      

  5.   

    select a.*, 'A' from a
    union all
    select b.*, 'B' from b
      

  6.   

    select a.*, 'A' "FROM" from a
    union all
    select b.*, 'B' "FROM" from b
      

  7.   


    楼主用from做字段名,而from是oracle的关键字,所以只好为字段from加上双引了,如果不用from做字段名,比如fromtable,那就容易了SELECT id, name, 'a' as fromtable 
      FROM a 
    UNION ALL 
    SELECT id, name, 'b' 
      FROM b 
      

  8.   

    select id,name,'a' table from a 
    union all
    select id,name,'b' table from b