欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

SQL JOIN用法示例

程序员文章站 2022-06-17 21:55:50
现在有两张表,第一张表有学生姓名,语文,数学,英语成绩,数据量46万。第二张表有学生姓名,物理,化学,政治成绩,数据量10万。 1. 找出既参加了table1,也参加了table2的考试的学生的数学和物理成绩: SELECT achievement_1.name, achievement_1.mat ......

现在有两张表,第一张表有学生姓名,语文,数学,英语成绩,数据量46万。第二张表有学生姓名,物理,化学,政治成绩,数据量10万。

1. 找出既参加了table1,也参加了table2的考试的学生的数学和物理成绩:

select achievement_1.name, achievement_1.math, achievement_2.physics
from achievement_1
inner join achievement_2
on achievement_1.name = achievement_2.name
order by achievement_1.name;

select achievement_1.name, achievement_1.math, achievement_2.physics
from achievement_1, achievement_2
where achievement_1.name = achievement_2.name;

结果:

SQL JOIN用法示例

 2. 现在想找出table1中所有学生的数学成绩,以及他的物理成绩,如果有的话。

select achievement_1.name, achievement_1.math, achievement_2.physics
from achievement_1
left join achievement_2
on achievement_1.name = achievement_2.name
order by achievement_1.name;

部分结果:

SQL JOIN用法示例

 

 一开始没有建立索引,查询了几分钟都没结果。建立了索引之后,瞬间出结果。索引:

SQL JOIN用法示例

 

上一篇: Mysql-概念

下一篇: MVC三层架构