在学习sql server 2000 时,就对联接这个概念感到难以理解,在经过查看一些教材的基础上得到答案,应该是一种关系运算. 首先联接分为内联接,外联接. 首先从关系运算说起,关系运算中就有联接这个概念,设关系A,关系B如下图所示: A:
snosname1'mm'2'nn'3'tt'
B
cnosnodegree118022903390
sql 实现:create database student on ( name=Student_data, filename='c:\studentdata.mdf', size=5Mb, maxsize=10MB, fileGrowth=1MB) log on ( name=Student_log, filename='c:\studentlog.ldf', size=2MB, maxsize=5MB, fileGrowth=1MB) -----数据表 use student create table student (sno int primary key, sname char(20)) create table score ( sno int , cno int, degree int)
-----插入数据 insert into student values(1,'mm') insert into student values(2,'nn') insert into student values(3,'tt') insert into student values(4,'uu') insert into score values (1,1,80) insert into score values (2,1,80) insert into score values (3,1,80) insert into score values (4,2,80) insert into score values (5,2,80) insert into score values (6,3,80) insert into score values (7,2,80) insert into score values(8,3,80) insert into score values (9,3,98) select * from student go select * from score go select s.sno,s.sname,c.degree,c.cno from student as s inner join score as c on s.sno=c.sno (select s.sno,s.sname,c.degree,c.cno from student as s inner join score as c on s.sno=c.sno) 结果:
1mm8012nn8013tt8014uu801 select s.sno,s.sname,c.degree,c.cno from student as s left outer join score as c on s.sno=c.sno 结果可以自己查看. select s.sno,s.sname,c.degree,c.cno from student as s right outer join score as c on s.sno=c.sno 结果自己验证. (待续)转载于:https://www.cnblogs.com/happygo/archive/2005/10/26/262574.html
