mysql join用法简单对比
首先创建两个数据表,并添加数据
创建这两个表SQL语句如下: CREATE TABLE a( `aID` int( 1 ) AUTO_INCREMENT PRIMARY KEY , `aNum` char( 20 ) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;CREATE TABLE b( `bID` int( 1 ) NOT NULL AUTO_INCREMENT PRIMARY KEY , `bName` char( 20 ) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;INSERT INTO a VALUES ( 1, 'a1' ) , ( 2, 'a2' ) , ( 3, 'a3' ) , ( 4, 'a4' ) , ( 5, 'a5' ) ; INSERT INTO b VALUES ( 1, ' 2006032401' ) , ( 2, '2006032402' ) , ( 3, '2006032403' ) , ( 7, '2006032404' ) , ( 8, '2006032408' ) ;
先来看看 left join 的查询结果
select * from a left join b on a.aID=b.bID
如图: 
看看 inner join
select * from a inner join b on a.aID=b.bID;
如图: 
最后看看 right join 的查询结果
select * from a right join b on a.aID=b.bID;
如图: 
也就是说left join 则连接左边表中所有记录都会出现,如果根据连接条件在 b表 中找不到相关记录,则显示为null。
right join 则显示右边表中的全部记录。inner join 则只有符合条件的记录才会出现在结果集中。

浙公网安备 33010602011771号