有两个表
id name cid 和 cid cname
1 jack 1 1 老师
2 tom 2 2 学生
3 rose null 3 打饭的
4 jerry null如何写SQL语句取出这样的表id name cname
1 jack 老师
2 tom 学生
3 rose null
4 jerry null
其中cid是外键,上面的问题也就是取出表1中所有数据但是cid字段用表2的cname表示。
初学请指教
id name cid 和 cid cname
1 jack 1 1 老师
2 tom 2 2 学生
3 rose null 3 打饭的
4 jerry null如何写SQL语句取出这样的表id name cname
1 jack 老师
2 tom 学生
3 rose null
4 jerry null
其中cid是外键,上面的问题也就是取出表1中所有数据但是cid字段用表2的cname表示。
初学请指教
from a
left join b
on a.cid=b.cid
表1:
id name cid
1 jack 1
2 tom 2
3 rose null
4 jerry null表2:
cid cname
1 老师
2 学生
3 打饭的
from ta a left join tb b on a.cid=b.cid
create table tb2(cid int,cname varchar(10))
insert into tb1 values(1 ,'jack' ,1 )
insert into tb1 values(2 ,'tom' ,2 )
insert into tb1 values(3 ,'rose' ,null)
insert into tb1 values(4 ,'jerry' ,null)
insert into tb2 values(1 ,'老师')
insert into tb2 values(2 ,'学生')
insert into tb2 values(3 ,'打饭的')select a.id , a.name , b.cname from tb1 a left join tb2 b on a.cid = b.ciddrop table tb1 , tb2/*
id name cname
----------- ---------- ----------
1 jack 老师
2 tom 学生
3 rose NULL
4 jerry NULL(所影响的行数为 4 行)
*/