标题:mysql学习第11天right join inner join用法
-------------------------------------------------------------------------------------------------------------------------------
时间:2012/4/28 13:03:09
-------------------------------------------------------------------------------------------------------------------------------
内容:
create table boy
(name varchar(10),flower varchar(10)) character set utf8;
insert into boy
values
('谢霆锋','菊花'),
('吴宗宪','梅花'),
('刘德华','桃花'),
('周润发','玫瑰'),
('小沈阳','没钱花');
create table girl
(name varchar(10),flower varchar(10)) character set utf8;
insert into girl
values
('张柏芝','菊花'),
('张静初','玫瑰'),
('邱淑贞','桃花'),
('张柏芝','玫瑰'),
('空姐','菊花'),
('小泽玛莉亚','玫瑰'),
('范冰冰','茉莉');
select boy.*,girl.* from boy left join girl on boy.flower=girl.flower;
select boy.*,girl.* from boy right join girl on boy.flower=girl.flower;
select boy.*,girl.* from boy inner join girl on boy.flower=girl.flower;
解读一个误区 left join不是excel的 vlookup
如果是主表在附表有2行以上匹配的时候 他会全部列出来 主表会重复
比如主表10行数据 附表10个行数 最后的表的数据大于等于10行 主表没配对上的留空
主表多配对的列出来多有配对的情况
inner join就是删掉了没有配对的情况