`
ytuwlg
  • 浏览: 91326 次
  • 性别: Icon_minigender_1
  • 来自: 威海
社区版块
存档分类
最新评论

sql 关联查询

    博客分类:
  • DB
阅读更多
create table a (aid int,aname varchar(10))

create table b (bid int,bname varchar(10))

select * from a

aid         aname      
----------- ---------- 
1           wlg
2           ytu
3           hit

select * from b

bid         bname      
----------- ---------- 
1           java
2           python
4           php

select * from a left join b  on a.aid = b.bid

//left join 取出 a 表全部数据,然后根据 on 匹配条件加上b表匹配的数据。 

aid         aname      bid         bname      
----------- ---------- ----------- ---------- 
1           wlg        1           java
2           ytu        2           python
3           hit        NULL        NULL

select * from a inner join b on a.aid = b.bid

//只有a和b匹配的数据。

aid         aname      bid         bname      
----------- ---------- ----------- ---------- 
1           wlg        1           java
2           ytu        2           python

select * from a right join b on a.aid = b.bid

//首先取出b表的所有数据然后根据  on 匹配条件加上a表匹配的数据。

aid         aname      bid         bname      
----------- ---------- ----------- ---------- 
1           wlg        1           java
2           ytu        2           python
NULL        NULL       4           php

select * from a,b where a.aid = b.bid

//只有a 和 b 匹配的数据。

aid         aname      bid         bname      
----------- ---------- ----------- ---------- 
1           wlg        1           java
2           ytu        2           python
分享到:
评论
1 楼 hezhiyu 2009-12-18  
如此看来select * from a inner join b on a.aid = b.bid 和select * from a,b where a.aid = b.bid  的作用是一样的了,可能效率不同吧

相关推荐

Global site tag (gtag.js) - Google Analytics