多表关联数据


show variables like 'character_set%';

create table students(
id int primary key auto_increment,
name varchar(20)
)
ENGINE= MYISAM CHARACTER SET utf8;

insert into students values(1,"小明");
insert into students values(2,"小红");
insert into students values(3,"小白");
insert into students values(4,"小李");
insert into students values(5,"小周");



create table subjects(
id int primary key auto_increment,
stitle varchar(20) 
)
ENGINE= MYISAM CHARACTER SET utf8;

insert into subjects values(1,"语文");
insert into subjects values(2,"数学");
insert into subjects values(3,"英文");



create table scores(
id int primary key auto_increment,
stuid int,
subid int,
score decimal(5,2),
foreign key(stuid) references students(id),
foreign key(subid) references subjects(id)
)
ENGINE= MYISAM CHARACTER SET utf8;

insert into scores values(1,1,1,70);
insert into scores values(2,1,2,80);
insert into scores values(3,1,3,80);
insert into scores values(4,2,1,30);
insert into scores values(5,2,2,40);
insert into scores values(6,2,3,50);
insert into scores values(7,3,1,10);
insert into scores values(8,3,2,20);
insert into scores values(9,3,3,30);
insert into scores values(10,4,1,30);
insert into scores values(11,4,2,40);
insert into scores values(12,4,3,50);
insert into scores values(13,5,1,10);
insert into scores values(14,5,2,20);
insert into scores values(15,5,3,30);

select students.name,subjects.stitle,scores.score
from scores
inner join students on scores.stuid=students.id
inner join subjects on scores.subid=subjects.id;

select students.name,scores.score,subjects.stitle
from scores,students,subjects 
where scores.stuid=students.id and scores.subid=subjects.id;

猜你喜欢

转载自blog.csdn.net/wql_zero/article/details/81119737