连接查询是将两个或两个以上的表按某个条件连接起来,从中选取需要的数据。1.内连接查询内连接查询是最常用的连接查询。内连接可以查询两个或两个以上的表。当两个表中存在表示相同意义的字段时,可以通过该字段来连接这两个表;当该字段的值相等时,就查询出该记录。注:两个表中表示相同意义的字段可以是指父表的主键和子表的外键。下面我们使用内连接查询,查询employee表和department表。先查看一下employee表再查看一下department表接下来我们使用内连接查询select num,employee.d_id,name,age,sex,department.d_name,functions from employee,department where employee.d_id=department.d_id;2.外连接查询外连接查询可以查询两个或两个以上的表。外连接查询也需要通过指定字段进行连接。当该字段的值相等时,可以查询出该记录。而且,该字段取值不相等的记录也可以查询出来。外连接查询包括左连接和右连接查询。语法:select 属性列表 from 表名1 left|right join表名2 on 表名1.属性名1=表名2.属性名2.属性名列表:表示要查询的字段和名称,这些字段可以来自不同的表;表名1和表名2:表示将这两个表进行外连接;left:表示进行左连接查询;right:表示右连接查询;on:后面接的就是连接条件;属性名1:表示”表名1”中的一个字段,用”.”表示字段属于哪一个表;属性名2:表示”表名2”中的一个字段。(1) 左连接查询进行左连接查询时,可以查询出”表名1”所指的表中的所有记录。而”表名2”所指的表中,只能查询出匹配的记录。employee表department表下面我们使用左连接查询,查询employee表和department表。select num,name,employee.d_id,age,sex,d_name,functions from employee left join department on employee.d_id=department.d_id;(2) 右连接查询进行右连接查询时,可以查询出”表名2”所指的表中的所有记录,而”表名1”所指的表中,只能查询出匹配的记录。下面我们使用右查询的方式查询employee表和department表。select num,name,age,sex,d_name,functions from employee right join department on employee.d_id=department.d_id;(3) 复合条件连接查询在连接查询时,也可以增加其他的限制条件。通过多个条件的复合查询,可以是查询结果更加准确。此外,还可以加上group by、order by等关键字。示例:下面我们使用内连接查询的方式查询employee表和department表。并且employee表年龄字段age>24的人。select num,name,department.d_id,age,sex,d_name,functions from employee,department where employee.d_id=department.d_id and age>24;示例:我们继续使用内连接查询employee表和department表,使用order by关键字对age进行升序排序。select num,name,employee.d_id,sex,age,d_name,functions from employee,department where employee.d_id=department.d_id order by age asc;注:连接查询中使用最多的是内连接查询。而外连接查询中的左连接和右连接查询使用的频率较低。连接查询时可以加一些限制条件,这样只会对满足限制条件的记录进行连接操作,还可以将连接查询的结果排序。
版权免责声明: 本站内容部分来源于网络,请自行鉴定真假。如有侵权,违法,恶意广告,虚假欺骗行为等以上问题联系我们删除。
本文地址:https://www.phxss.com/a/347.html