sql数据库多表连接详细讲解

sql数据库多表连接详细讲解

ID:34726203

大小:217.18 KB

页数:10页

时间:2019-03-10

sql数据库多表连接详细讲解_第1页
sql数据库多表连接详细讲解_第2页
sql数据库多表连接详细讲解_第3页
sql数据库多表连接详细讲解_第4页
sql数据库多表连接详细讲解_第5页
资源描述:

《sql数据库多表连接详细讲解》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、SQL多表连接应用背景数据库是由多张表组成的存储结构,并通过多张表之间的关系建立起完整的有效的数据存储形式,形成关系型数据库。作为数据查询语言SQL,提供了功能强大的数据表连接查询功能,使多张表格之间形成有效的数据联系,使得关系数据库在大型数据库应用中占据了主角地位。一个普通的大型数据库应用程序所使用的数据库中,有多达几百张表的数据,那么如何将这些表高效的有机的联系起来,就成为设计关系数据库的一个重要指标。优良的数据库设计指标包括:1.减少数据冗余,去除掉多余的数据冗余,可以通过建立表之间的连接关系完成。2.数据更新正确,不能因为表之间

2、存在关系后,使得更新记录出现不正常的数据。3.添加数据正常,添加数据过程中,应该保持数据表之间的关系,确定表之间的连接。4.查询简便灵活,在建立数据连接的查询过程中,连接清晰简便,操作灵活准确。数据库设计是应用软件成功与否的一项重要标志。设计数据库,除与系统分析结果,设计员的水平等有关外,还可以参考一些规范的设计范式,下面简单介绍数据库的2个基本设计范式:1.第一范式:要求表的每列都是不可再分的简单数据项,所以1对N关系就必须用多表表示,而不能用一张表表示。2.第二范式:表中的每一个非主键列必须完全函数依赖于主键,就是说表中除主键之外的

3、其他列,都必须通过主键能够唯一确定。数据库的设计非常复杂,没有一成不变的东西,需要就地取材,解决问题,简单化问题。知识要点(1)传统连接连接就是将多个表中的数据连接到一起的查询,即连接操作可以在一个Select语句中完成从多个表中查找和处理数据,使用连接时可以使用名字相同的不同表的列,也可以不同,但要求连接的列不需可连接,即数据类型相同。传统的连接语法如下:Select*fromTblname1T1,Tblname2T2whereT1.column=T2.column10MSSQL2000程序员培训教程连接SQL语句的明显标志为在Fro

4、m子句后边,有多个表Tblname1,Tblname2,Where子句后有表连接键T1.column=T2.column。例1:以销售单据为例,察看每个销售单据的真实客户姓名,单据号,单据金额,销售代表等信息。Select语句如下:SELECTT1.rid,T1.cid,T2.cname,T1.rmoney,T1.remployeeFROMretailT1,customerT2whereT1.cid=T2.cid查询结果如下:ridcidcnamermoneyremployee1kh01张经理1200liuhong2kh02李经理160

5、0liuhong3kh01张经理1600liuhong4kh01张经理3200zhangling5kh02李经理1800zhangling例2:以销售明细为例,查询每个销售明细记录的真实产品名称,产品的零售单价,实际销售单价,销售金额等等信息,Select语句如下:SELECTT1.rid,T1.pcode,T2.pname,T2.ptype,T2.pprice,T1.dprice,T1.dmoneyFROMDetailT1,productT2whereT1.pcode=T2.pcode查询结果如下:ridpcodepnameptype

6、ppricedpricedmoney1001motorolaV302800120024001002sonyC303200240048001003nokiasony61104500150015002002sonyC303200220044002003nokiasony61104500150030003001motorolaV302800120024003002sonyC303200230046003003nokiasony6110450015003000例3:多表连接,建立查询销售单据与销售明细连接,销售明细中的产品代码与产品信息中的代码

7、连接,销售单据的客户代码与客户信息的客户代码连接,构成4张表的多表连接,Select语句如下:selectT1.rid,T1.cid,T3.cname,T2.pcode,T4.pname,T2.dprice,T2.dnumber,T2.dmoneyfromretailT1,detailT2,customerT3,productT4whereT1.rid=T2.ridandT1.cid=T3.cidandT2.pcode=T4.pcode查询结果如下:ridcidcnamepcodepnamedpricednumberdmoney10MS

8、SQL2000程序员培训教程1kh01张经理001motorola1200224001kh01张经理002sony2400248001kh01张经理003nokia1500115002kh02李经理002s

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。