php网站开发wampphp网站模板源码
news/
2025/9/25 21:33:57/
文章来源:
php网站开发wamp,php网站模板源码,网站工作室和网络公司,淘宝客网站怎么备案介绍表连接#xff0c;更确切的说是inner joins內连接#xff0e; 內连接仅选出两张表中互相匹配的记录#xff0e;因此#xff0c;这会导致有时我们需要的记录没有包含进来。 为更好的理解这个概念#xff0c;我们介绍两个表作演示。苏格兰议会中的政党表(party)和议员表…介绍表连接更确切的说是inner joins內连接 內连接仅选出两张表中互相匹配的记录因此这会导致有时我们需要的记录没有包含进来。 为更好的理解这个概念我们介绍两个表作演示。苏格兰议会中的政党表(party)和议员表(msp)。 party(Code,Name,Leader) Code: 政党代码 Name: 政党名称 Leader: 政党领袖 msp(Name,Party,Constituency) Name: 议员名 Party: 议员所在政党代码 Constituency: 选区 在介绍左连接、右连接和全连接前有一个数据库中重要的概念要介绍一下即空值(NULL)。 A left join左连接包含所有的左边表中的记录甚至是右边表中没有和它匹配的记录。 同理也存在着相同道理的 right join右连接即包含所有的右边表中的记录甚至是左边表中没有和它匹配的记录。 而full join(全连接)顾名思义左右表中所有记录都会选出来。 讲到这里有人可能要问到底什么叫包含所有的左边表中的记录甚至是右边表中没有和它匹配的记录。 Ok,我们来看一个实例 SELECT msp.name, party.name FROM msp JOIN party ON partycode 这个是我们上一节所学的Join(注意也叫inner join)这个语句的本意是列出所有议员的名字和他所属政党。 你可以在 http://sqlzoo.cn/4.htm 亲自执行一下该语句看看结果是什么。 很遗憾我们发现该查询的结果少了两个议员Canavan MSP, Dennis。为什么因为这两个议员不属于任 和政党即他们的政党字段(Party)为空值。那么为什么不属于任何政党就查不出来了这是因为空值在 作怪。因为议员表中政党字段(Party)的空值在政党表中找不到对应的记录作匹配即 FROM msp JOIN party ON partycode 没有把该记录连接起来而是过滤出去了。 在该短语中msp在Join的左边所有称为左表。party在Join的右边所有称为右表。 Ok,现在再看看这句话“包含所有的左边表中的记录甚至是右边表中没有和它匹配的记录” 意思应该很明白了吧。执行下面这个语句那两个没有政党的议员就漏不了了。 SELECT msp.name, party.name FROM msp LEFT JOIN party ON partycode 关于右连接,看看这个查询就明白了 SELECT msp.name, party.name FROM msp RIGHT JOIN party ON msp.partyparty.code 这个查询的结果列出所有的议员和政党包含没有议员的政党但不包含没有政党的议员。 那么既要包含没有议员的政党又要包含没有政党的议员该怎么办呢对了全连接(full join)。 SELECT msp.name, party.name FROM msp FULL JOIN party ON msp.partyparty.code转载于:https://www.cnblogs.com/millen/archive/2009/02/25/1397842.html
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/917561.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!