你想得到的数据分散存在于不同的表中,且那些表之间可关联,使用多表链接查询。
如A表中有学号,姓名;B表中有学号,班级;C表中有班级,班主任。你要查“张三”的班主任,就需A链接B再链接C。语句:SELECT 班主任 FROM A LEFT JOIN B ON A.学号=B.学号 LEFT JOIN C ON B.班级=C.班级 WHERE 姓名='张三'
你所需要的数据在不同的表中,并且表之间有关联。
eg:
表:student的表结构:
id varchar2(8), //学生id
name varchar2(32),//学生姓名
teacher_id varchar2(8),//该学生老师的id
表teacher的表结构:
id varchar2(8),//老师id
name varchar2(32),//老师姓名
你想获得该学生的id,name和他老是的名字,就要用多表联合查询了:
select s.*,t.name
from student s join teacher t
on s.teacher_id = t.id;
或者:
select s.*,t.name
fron student s,teacher t
where s.teacher_id = t.id;
希望对你有帮助!
就是你想在一次查询中想要获取两个或者以上表中的数据的时候,这些表有共同的属性,比如学号,就像两个表格一样,各有一列都是学号,那么按照学号相等的原则将两个表格连起来,就可以做到一次查到两个表中的数据了,多表连查以此类推。