首页 > 数据库技术 > 详细

MySQL表连接查询

时间:2020-06-09 11:46:20      阅读:79      评论:0      收藏:0      [点我收藏+]

MySQL表连接查询语法

MySQL表连接查询语法

SQL92版本

  • 内连接
    • 等值连接
      • 查询用户表A与用户表B之间因为编号关联
      • select `name ‘员工名字‘,bName ‘B名字‘ from tb_userA a,tb_userB b where a.b_id = b.id
    • 非等值连接
      • 查询员工工资级别
      • select salary ‘薪水‘,grade ‘等级‘ from tb_staff,tb_grade where stlary between tb_staff.grade and tb_grade.grade
    • 自连接
      • <把自己当做两个表来使用
      • 查询员工属于哪个领导
      • select a.staffName ‘员工姓名‘ ,b.leaderName ‘领导姓名‘ from tb_staff a,tb_staff b where a.staff_id = b.leader_id
    • 92版本是没有外连接的

SQL99版本

  • 内连接
    • 语法: select 字段 from 表一 别名 [连接类型] jion 表二 别名 on 连接条件 [where][group by][having][order]
      • 等值连接
      • 查询员工名、部,门名
      • select staffName ‘员工姓名‘,departmentName ‘部门名称 from tb_departments d inner join tb_staff s on s.department_id = d.department_id
    • 非等值连接
      • 查询员工的工资级别
      • select salary,grade from staff s inner join tb_grade g on e.salary between g.lowes and g.highest
    • 自连接
      • 查询员工属于哪个领导
      • select a.staffName , b.leaderName from staff a inner join staff b on a.staff_id = b.leader_id
  • 外连接
    • 左外: left [outer]
    • 右外: right[outer]
    • 全外: full[outer]
    • 外连接查询的是主表的所有数据,如果从表有相匹配则输出,没有相匹配则补为null
    • 外连接查询结果=内连接结果+主表中有而从表没有的结果
  • 交叉连接: cross

MySQL表连接查询

原文:https://www.cnblogs.com/zhenzhunaichabujiatang/p/13071520.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!