亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

多表連接總結

標簽:
Oracle

多表连接

  1. 内连接

    a.相等连接(inner join)

      1)等值连接:通过相同的字段值连接起来的查询,不去除重复【列】,注意连接依据为null,null不与任何值匹配,包括null本身(即null != null)无比较性

          select * from emp inner join dept on emp.deptno= dept.deptno;

          select * from emp,dept where emp.deptno = dept.deptno

      2)不等连接: 使用比较运算符作为连接依据

          select * from emp inner join dept on emp.age >23;

          select * from emp,dept where emp.age >23;

    b.自然连接(natrual join):将两表【所有】列名相同的字段的进行比较,只保留一列属性列

          select * from emp natrual join dept;

  2. 外连接(outer join)

    a.左外连接(left outer join):以关键字左边表为主,查询右表无记录则null,左表数据为总数

          select * from emp left join dept on emp.deptno = dept.deptno;

    b.右外连接(right outer join):以关键字右表为主,查询左表无记录则为null,右表数据为总数

          select * from emp right join dept on emp.deptno = dept.deptno;

    c.全外连接(full outer join):左外连接和右外连接的并集

          select * from emp full join dept on emp.deptno = dept.deptno;

  3. 笛卡儿积(cross join):也称交叉连接,两表行记录一一匹配查询

    select * from dept cross join emp;

    select * from dept,emp;

  4. 自连接:既可以使用内连接也可以使用外连接

    select * from emp e1 left join emp e2 on e1.empno = e2.mrg

  5. 连接符(union/union all):将所有列名一致的所有表进行合并

    两者的区别只在于是否去除重复【行】

    select * from emp left join dept on dept.deptno = emp.deptno union (select * from emp rgint join dept on dept.deptno = emp.deptno); 



點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消