Mysql数据库的内外联查询

  • 在数据库中有两个表
    Mysql数据库的内外联查询_第1张图片

    -Mysql数据库的内外联查询_第2张图片

  • 内联(inner join)
    将两表中都存在的id的字段合成一行
    sql语句:

select * from test1 inner join test2 on test1.id=test2.id;
  • 运行结果:
    -这里写图片描述

  • 左联(left outer join)
    显示表test1中的所有行,并把表test2中符合条件加到表test1中;
    表test2中不符合条件,就不用加入结果表中,并且NULL表示。
    sql语句:

select * from test1 left outer join test2 on test1.id=test2.id;
  • 运行结果:
    Mysql数据库的内外联查询_第3张图片
  • 如果实现指定的字段
    sql语句:
select test1.name,test1.tel,test2.money from test1 left outer join test2 on test1.id=test2.id;
  • 运行结果:
    Mysql数据库的内外联查询_第4张图片
    条件查询在语句之后加上where…

  • 右联(right outer join)
    显示表test2中的所有行,并把表test1中符合条件加到表test2中;
    表test1中不符合条件,就不用加入结果表中,并且NULL表示。
    sql语句:

select * from test1 right outer join test2 on test1.id=test2.id;
  • 运行结果:
    Mysql数据库的内外联查询_第5张图片

  • 全联(full outer join)
    显示两表中所有的行,即左联结果表和友联结果表合起来,过滤掉重复的

  • sql语句:

select * from test1 full outer join test2 on test1.id=test2.id;

你可能感兴趣的:(mysql,sql,数据库,C++)