两张表,article 的uid 对应 user 表的 uid

create table article(
id int unsigned not null auto_increment primary key,
title char(200),
content text,
uid int
)engine=MyISAM default charset=utf8;

create table user(
uid int unsigned not null auto_increment primary key,
name varchar(200),
email varchar(200)
)engine=MyISAM default charset=utf8;

left join

首先看这条语句

SELECT article.id, article.title, user.name, user.email from article LEFT JOIN `user` ON article.uid = `user`.uid where article.id < 3;

        这句sql的意思是查询出 article 表的id,title字段和user表的name,email字段,将user表的数据列在article表查出的字段中。

也就是说,以article表中的数据为基准来列出user表,不管user表中是否有对应数据。


right join

以右边的表为基准


inner join 

取出两表的交集同 cross join