SQL语法之:连表查询:union all

发布时间 2023-05-06 17:49:25作者: C_C_菜园

1、准备

  • 两条sql查询出来的字段数必须一致

  • 表1
    字段:

数据:


  • 表2
    字段:

数据:


2、使用

  • 1、两张表结构完全一样,查询字段顺序也一样
select ID,NAME,SEX,AGE,NAME2 from T_01

UNION ALL

select ID,NAME,SEX,AGE,NAME2 from T_02;

结果:

  • 2、查询字段顺序不一样,但是对应的字段的类型一样
select ID,NAME2,SEX,AGE,NAME from T_01

UNION ALL

select ID,NAME,SEX,AGE,NAME2 from T_02;

结果:

  • 3、查询字段顺序不一样,对应的字段的类型不一样:mysql可以,oracle不行(必须字段类型完全一样)
select SEX,ID,NAME2,AGE,NAME from T_01

UNION ALL

select ID,NAME,SEX,AGE,NAME2 from T_02;

下面是mysql的结果。oracle是会报错,需要强制把字段类型转为一致