需求听起来很简单:
我现在想把两个表里面的纪录通过一条SQL文一起select出来。
例如
第一张表里有两条记录:[A,A,A]和[B,B,B]
第二张表里有一条记录:[C,C,C]
这两个表的字段名都不一样,
我现在想select出来[A,A,A]和[B,B,B]和[C,C,C],
好像很简单的样子,可我就是没想出来,拜托大家了。谢谢。

解决方案 »

  1.   

    select * from A
    union
    select * from B
      

  2.   

    如果要去重复就用 UNION 
    如果不去重复就用 UNION ALL
    select * from A
    union all
    select * from B
      

  3.   

    能用union all就用 union all吧,大数据量的话 union很累的
      

  4.   

    .......看你是要如何~~连接两个表~~如果~是只要记录的纵连接unon all就可以了~
    如果是要横向的就要用别的方法了~~
      

  5.   

    sql为:
    select * from table1
    union all
    select * from table2
      

  6.   

    select * from A
    union all
    select * from B
      

  7.   

    第一张表里有两条记录:[A,A,A]和[B,B,B]
    第二张表里有一条记录:[C,C,C]---楼上各位都忽略了这个重点:这两个表的字段名都不一样,我现在想select出来[A,A,A]和[B,B,B]和[C,C,C],
    ----------------对于这种情况,需要使用字段的别名,如下:select 字段1 as col1,字段2 as col2,字段3 as col3 from 表1
    union all
    select 字段1 as col1,字段2 as col2,字段3 as col3 from 表2
    /如果你需要去掉重复的记录,那就把 union all 换成 union
      

  8.   

    SQL> CREATE TABLE TT (TT1 VARCHAR2(1),TT2 VARCHAR2(1),TT3 VARCHAR2(1));表已创建。SQL> CREATE TABLE KK (KK1 VARCHAR2(1),KK2 VARCHAR2(1),KK3 VARCHAR2(1));表已创建。SQL> INSERT INTO TT VALUES('A','A','A');已创建 1 行。SQL> INSERT INTO TT VALUES('B','B','B');已创建 1 行。SQL> COMMIT;提交完成。SQL> INSERT INTO KK VALUES('C','C','C');已创建 1 行。SQL> COMMIT;提交完成。SQL> SELECT * FROM TT;T T T
    - - -
    A A A
    B B BSQL> SELECT * FROM KK;K K K
    - - -
    C C CSQL> SELECT TT1 AS COL1,TT2 AS COL2,TT3 AS COL3 FROM TT
      2  UNION ALL
      3  SELECT KK1 AS COL1,KK2 AS COL2,KK3 AS COL3 FROM KK
      4  /C C C
    - - -
    A A A
    B B B
    C C C