Maison > base de données > tutoriel mysql > le corps du texte

数据库中内连接、外连接、全连接

WBOY
Libérer: 2016-06-07 14:53:26
original
1024 Les gens l'ont consulté

数据库中内连接、外连接、全连接 内连接:把两个表中数据对应的数据查出来 外连接:以某个表为基础把对应数据查出来(全连接是以多个表为基础) student表 no name 1 a 2 b 3 c 4 d grade表 no grade 1 90 2 98 3 95 www.2cto.com 内连接 inner join(查找条


数据库中内连接、外连接、全连接

 

内连接:把两个表中数据对应的数据查出来 

外连接:以某个表为基础把对应数据查出来(全连接是以多个表为基础) 

 

student表 

no name 

1 a 

2 b 

3 c 

4 d 

 

grade表 

no grade 

1 90 

2 98 

3 95 

  www.2cto.com  

内连接 inner join(查找条件中对应的数据,no4没有数据不列出来) 

语法:select * from student inner join grade on student.no = grade.no 

结果 

student.no name grade.no grade 

1 a 1 90 

2 b 2 98 

3 c 3 95 

 

左连接(左表中所有数据,右表中对应数据,即左边一定有数据,右边不一定有) 

语法:select * from student left join grade on student.no = grade.no 

结果: 

student.no name grade.no grade 

1 a 1 90 

2 b 2 98 

3 c 3 95 

4 d 

 

右连接(右表中所有数据,左表中对应数据,即右边一定有,左边不一定有) 

语法:select * from student right join grade on student.no = grade.no 

结果: 

student.no name grade.no grade 

1 a 1 90 

2 b 2 98 

3 c 3 95 

全外连接(表中数据=内连接+左边缺失数据+右边缺失数据)

  www.2cto.com  

语法:select * from student full join grade on student.no = grade.no 

结果: 

no name grade 

1 a 90 

2 b 98 

3 c 95 

4 d 

1 a 90 

2 b 98 

3 c 95 

 

交叉连接 (没有where字句时结果为笛卡尔积) 一般不用。

 

注:access 中不能直接使用full join ,需要使用union all 将左连接和右连接合并后才可以

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!