<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[Heck's  Blog]]></title> 
<link>https://www.heckjj.com/index.php</link> 
<description><![CDATA[一瞬间的决定，往往可以改变很多，事实上，让自己成功的往往不是知识，是精神！ 如果你总是为自己找借口，那只好让成功推迟。执行力，今天！]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[Heck's  Blog]]></copyright>
<item>
<link>https://www.heckjj.com/sql-join-many-table/</link>
<title><![CDATA[数据库中实现多表查询的例子]]></title> 
<author>Heck &lt;@hecks.tk&gt;</author>
<category><![CDATA[数据库]]></category>
<pubDate>Tue, 31 Aug 2010 05:05:51 +0000</pubDate> 
<guid>https://www.heckjj.com/sql-join-many-table/</guid> 
<description>
<![CDATA[ 
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="font-family: 微软雅黑;">一直有很多朋友问我多表查询的方法，今天，天空下的雨就给初学数据库的朋友讲一下数据库多表查询的简单实现。不说废话了，直接例子吧。<br/>例子：<br/>数据库有三个表<br/>学生表：student&nbsp;&nbsp; 选课表：lesson&nbsp;&nbsp; 成绩表：score<br/>学生表[student]<br/>id&nbsp;&nbsp;&nbsp;&nbsp;name&nbsp;&nbsp; les&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>1&nbsp;&nbsp;&nbsp;&nbsp; 小糊&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1<br/>2&nbsp;&nbsp;&nbsp;&nbsp; 小猪&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1<br/>3&nbsp;&nbsp;&nbsp;&nbsp; 阿正&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3 <br/>4&nbsp;&nbsp;&nbsp;&nbsp; 小飞&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2<br/><br/>选课表[lesson ]<br/>id&nbsp;&nbsp;&nbsp;&nbsp;LName<br/>1&nbsp;&nbsp;&nbsp;&nbsp; 软件<br/>2&nbsp;&nbsp;&nbsp;&nbsp; 经济<br/>3&nbsp;&nbsp;&nbsp;&nbsp; 管理<br/><br/>成绩表[score]<br/>id&nbsp;&nbsp;&nbsp;&nbsp; stuID&nbsp;&nbsp;&nbsp;&nbsp;lesID&nbsp;&nbsp;&nbsp;&nbsp;num<br/>1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;97<br/>2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;90<br/>3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;80<br/>4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;95<br/>5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;88<br/>6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;97<br/>上面就是三张表的数据。<br/>这时候，我们就需要把这些表中的数据联合起来查询。比如说学生的选课信息，我们可以这样写：</span><br/><textarea name="code" class="sql" rows="15" cols="100">
1.&nbsp;&nbsp;SELECT s.id,s.name,le.lName FROM student AS s,lesson AS le WHERE s.les=le.id
2.&nbsp;&nbsp;SELECT s.id,s.name,le.lName FROM student as s INNER JOIN lesson as le ON s.les=le.id</textarea><br/><span style="font-family: 微软雅黑;">查询结果：<br/>id name lName<br/>1 小糊 软件<br/>2 小猪 软件<br/>3 阿正 管理<br/>4 小飞 经济<br/><br/>两种方法是等效的，且匹配条件都为：学生表的les = 选课表的id ，结果才能正确显示。当我们连接两张数据表的时候，查询的方式是首先逐行扫描“学生表”中的信息，然后根据连接条件来决定此记录是否被检索，还有很多情况 自己可以试试，这里就不说了。AS 在SQL语句里是起一个别名的作用。<br/>那么，我们要在同一页中显示三张表的的部分数据，我们又该如何连接呢？ 看看下面的SQL语句吧</span><br/><textarea name="code" class="sql" rows="15" cols="100">
SELECT n.id,s.name,le.lName,n.num FROM (student AS s INNER JOIN score AS n ON s.id = n.stuID) INNER JOIN lesson AS le ON n.lesID = le.id</textarea><br/><span style="font-family: 微软雅黑;"><br/>查询结果：<br/>id&nbsp;&nbsp; name&nbsp;&nbsp; lName num<br/>1&nbsp;&nbsp; 小糊&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 软件&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 97<br/>2&nbsp;&nbsp; 小飞&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 软件&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 90<br/>3&nbsp;&nbsp; 小糊&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 经济&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;80<br/>4&nbsp;&nbsp; 小猪&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 软件&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 95<br/>5&nbsp;&nbsp; 阿正&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 软件&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 88<br/>6&nbsp;&nbsp; 小猪&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 管理&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 97<br/>首先，根据上面两张表查询的方法。我们只要稍微修改下三张表之间的匹配条件即可。<br/>两个匹配条件：学生表ID = 成绩表stuID ， 选课表ID =&nbsp;&nbsp;成绩表lesID 。<br/>好了，就到这了。慢慢体会吧。 更多的方法请到网上搜索吧。</span><br/><br/>Tags - <a href="https://www.heckjj.com/tags/sql/" rel="tag">sql</a> , <a href="https://www.heckjj.com/tags/%25E5%25A4%259A%25E8%25A1%25A8%25E6%259F%25A5%25E8%25AF%25A2/" rel="tag">多表查询</a>
]]>
</description>
</item><item>
<link>https://www.heckjj.com/sql-join-many-table/#blogcomment</link>
<title><![CDATA[[评论] 数据库中实现多表查询的例子]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>https://www.heckjj.com/sql-join-many-table/#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>