在实际工程中,多个表之间是有关系的。不可能检索表中的所有数据。如果没有表连接,那么我们需要大量的操作。比如你需要把数据发现的约束从一个表检索到一个表b,不仅需要操作多个表,而且效率很低。书中举例,复制代码如下:选择fid从sql语句t_customer返回2,即customer s name fid值mike 2,这样fcustomerid等于2的记录就可以检索到t_order。复制代码代码如下:随着选择数量的快速增加,从t_order到fcustomerid = 2的fprice让我们看了一下表连接,表连接有很多不同的类型,比如交叉连接,内连接,外连接。(1)内连接(inner join):内连接将两个表合并,只能得到满足两个表连接条件的数据。复制代码如下:select o.fid,o.fnumber,o.fprice,c.fid,c.fname,c.fage从o.fcustomerid = c.fid中的t_order加入t_customer c注意:在大多数数据库系统中,内部连接是可选的,是默认的连接。表连接的应用不能仅限于两个表,因为在很多情况下,需要连接多个表。例如t_order表中需要连接两个t_customer和t_ordertype表来检索所需信息,并编写以下sql语句:复制代码如下:select o.fid,o.fnumber,o.fprice,c.fid,c.fname,c.fage从t _ order中联接t_customer c在o.fcustomerid = c.fid中,t_ordertype在t _ orderftype id = t _ ordertype.fid中.(2) cross-join(交叉联接有两种方法可以定义交叉连接,即隐式连接和显式连接。下面是一个隐式的例子:复制代码如下:select t_customer.fid,t_customer.fname,t_customer.fage,t_order.fid,t_order.fnumber,t_order.fprice使用来自t_customer和t_order的显式连接,需要使用交叉连接。比如复制代码如下:select t_customer.fid,t_customer.fname,t_customer.fage,t_order.fid,t_order.fnumber,t_order.fprice交叉连接t_order (3)外部连接(external connection)from t _ customer:内部连接获取数据,满足连接条件,与外部连接。主要解决这样一个场景,毫无疑问是数据,满足检索的条件。外部连接数据,这是检索的另一部分,数据填充不符合零的要求。先看外接的分类:左外接(左外接)、右外接(右外接)、全外接(全外接)。我,左外接(左外接):前面那个也说了不满意的数据填空。那么就有必要填写null。对于左外部连接,如果右表中没有与所需左表匹配的数据,则对应的右字段必须填充空值,即左外部连接的主体是左表和右表进行匹配。复制代码代码如下:select o.fnumber,o.fprice,o.fcustomerid,c.fname,c.fage从左侧连接t_order o,t_customer c在o.fcustomerid = c.fid注意:如果使用左侧外部连接,可以使用where语句过滤不兼容的数据。复制代码如下:选择o.fnumber,o.fprice,o.fcustomerid,c.fname,c.fage将t_customer c从t_order o连接到右边,o.fcustomerid = c.fid连接到右边,ii(右外接):左边接地连接正好相反。复制代码代码如下:select o.fnumber,o.fprice,o.fcustomerid,c.fname,c.fage从o.fcustomerid = c.fid中t_order o的右外侧加入t_customer c注意:和左外侧连接一样,可以使用where语句进行筛选。3.全外接:全外接是左外接和外接的正确组合。结果集包括设置左侧外部连接和设置正确外部连接的结果。复制代码如下:选择o.fnumber,o.fprice,o.fcustomeri i。d、c.fname、c.fage在o.fcustomerid = c.fid处从t_order o连接t_customer c .结果相当于:复制代码如下:选择o.fnumber、o.fprice、o.fcustomerid、c.fname、c.fage在o.fcustomerid = c.fid处从t_order o外的左侧连接t_customer c .选择o.fnumber、o.fprice、o.fcustomerid、c.fname、c
了解更多sql内连接多表查询(sqlserver多表连接查询)相关内容请关注本站点。
