热门 购物 团购 理财 文学 人才 体育 汽车 游戏 软件 军事 音乐 视频 媒体 论坛 博客 银行 交友 综合
一起购 唯品会 梦芭莎 趣玩网 凡客诚品 麦考林 乐淘鞋网 弗克尚品 绿盒子 俏物悄语 新蛋网 当当网 玛萨玛索
拉手网 糯米网 爱帮团 聚划算 58团购 美团网 QQ团购 大众点评团 窝窝团 美淘网 满座网 团宝网 饭统饭团
起点网 榕树下 小说阅读 潇湘书院 红袖添香 幻剑书盟 新浪游戏 太平洋游戏 163邮箱 中国游戏 游戏中国 霏凡软件 铁血军事
访问本站赠送红包啦!凡在支付宝搜索数字口令 528131323 都将获得红包,天天搜索此口令天天得红包^_^
Health Sitology Family Finance Appliances Shopping Clothing Education Legal Rituals Beauty Property Travel Pet Medical Cyclopedia History Military Computers Sports Job Anecdote Geographic Mixed Entertain Literature Emotion Agriculture
JOIN连接组合两个表中的字段记录,包括三种: INNER JOIN运算式:连接组合两个表中的字段记录。

LEFT JOIN运算式:连接组合两个表中的字段记录,并将包含了LEFT JOIN左边表中的全部记录。

RIGHT JOIN运算式:连接组合两个表中的字段记录,并将包含了RIGHT JOIN右边表中的全部记录。
INNER JOIN设定两个表相关连的运算式,以连接组合两个表中的字段记录。INNER JOIN语法如下:FROM 表1 INNER JOIN 表2 ON 表1.字段1 比较运算子 表2.字段2 两个表连接的字段,譬如 [表1.字段1=表2.字段2],必须具有相同的字段类型,但是字段名称不需要相同。

例如,自动编号字段类型可以连接Long 的字段类型,但是单精整数字段类型不能连接双精整数的字段类型。比较运算子可为=、<、>、<=、>=、或<>。JOIN连接的字段,不可以包含MEMO字段类型或OLE对象类型,否则会发生错误。在一个JOIN表达式中,可以连结多个ON子句:SELECT fields
FROM 表1 INNER JOIN 表2
ON 表1.字段1 比较运算子 表2.字段1 AND
ON 表1.字段2 比较运算子 表2.字段2) OR
ON 表1.字段3 比较运算子 表2.字段3)JOIN表达式中,可以为巢状式:SELECT fields
FROM 表1 INNER JOIN
(表2 INNER JOIN [( ]表3
[INNER JOIN [( ] 表x [INNER JOIN ...)]
ON 表3.字段3 比较运算子 表x.字段x)]
ON 表2.字段2 比较运算子 表3.字段3)
ON 表1.字段1 比较运算子 表2.字段2 在一个INNER JOIN中,可以包括巢状式的LEFT JOIN或RIGHT JOIN,但是在一个LEFT JOIN或RIGHT JOIN中不能包括巢状式的INNER JOIN。让我们看一个于ASP程式当中使用这个SQL指令的例子。

可以利用Inner Join...On组合两个表中的记录,譬如ASP程式rs26.asp如下,[Select 销售.代号, 产品.名称, 产品.价格, 销售.数量 from 销售 Inner Join 产品 On 产品.代号 = 销售.代号],使用Inner Join...On设定两个表相关连的运算式,组合两个表中的记录:<%Set conn1 = Server.CreateObject("ADODB.Connection")conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;" Set rs3 = Server.CreateObject("ADODB.Recordset")sql = "Select 销售.代号, 产品.名称, 产品.价格, 销售.数量 from 销售 Inner Join 产品 On 产品.代号 = 销售.代号" rs3.Open sql,conn1,1,1,1%><TABLE COLSPAN=8 CELLPADDING=5 BORDER=0><TR><TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">代号</FONT></TD><TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">名称</FONT></TD><TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">价格</FONT></TD><TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">数量</FONT></TD></TR><% Do while not rs3.EOF %><TR><TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(0)%></TD><TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(1)%></TD><TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(2)%></TD><TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(3)%></TD></TR> <% rs3.MoveNext Looprs3.Close%></TABLE> 以上的 ASP程式rs26.asp,在用户端使用浏览器,浏览执行的结果,显示组合两个表中的记录,由于销售表中并没有名称字段和价格字段,通过 [Inner Join 产品 On 产品.代号 = 销售.代号] 找到产品表的名称字段和价格字段之资料。上例使用Inner Join的语法:Select 销售.代号, 产品.名称, 产品.价格, 销售.数量 from 销售 Inner Join 产品 On 产品.代号 = 销售.代号 结果与以下使用Where相同:Select 销售.代号, 产品.名称, 产品.价格, 销售.数量 from 销售, 产品 Where 产品.代号 = 销售.代号LEFT JOIN/RIGHT JOININNER JOIN连接组合两个表中相关连的字段记录,为内部连接,您还可以使用: 使用LEFT JOIN运算:来建立一个左边外部连接。LEFT JOIN除了取得两个表中相关连的字段记录,并将包含了LEFT JOIN左边表中的全部记录,不管在右边表中是否有相符的记录。


使用RIGHT JOIN运算:建立一个右边外部连接。RIGHT JOIN除了取得两个表中相关连的字段记录,并将包含了RIGHT JOIN右边表中的全部记录,不管在左边表中是否有相符的记录。
例如,[销售LEFT JOIN 产品] 可以选取所有的销售记录。[销售RIGHT JOIN 产品] 可以选取所有的产品记录。

譬如利用Left Join...On除了取得两个表中相关连的字段记录,并包含了LEFT JOIN左边表中的全部记录, ASP程式rs26.asp如下,[Select 销售.代号, 产品.名称, 产品.价格, 销售.数量 from 销售 Left Join 产品 On 产品.代号 = 销售.代号],使用Left Join包含了LEFT JOIN左边销售表中的全部记录:<%Set conn1 = Server.CreateObject("ADODB.Connection")conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;" 'conn1.Open "driver={SQL Server};server=(Local);uid=sa;pwd=;database=NtopSamp"Set rs3 = Server.CreateObject("ADODB.Recordset")sql = "Select 销售.代号, 产品.名称, 产品.价格, 销售.数量 from 销售 Left Join 产品 On 产品.代号 = 销售.代号" rs3.Open sql,conn1,1,1,1%><TABLE COLSPAN=8 CELLPADDING=5 BORDER=0><TR><TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">代号</FONT></TD><TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">名称</FONT></TD><TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">价格</FONT></TD><TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">数量</FONT></TD></TR><% Do while not rs3.EOF %><TR><TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(0)%></TD><TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(1)%></TD><TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(2)%></TD><TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(3)%></TD><% rs3.MoveNext Looprs3.Close%></TABLE> 以上的ASP程式rs26.asp,在用户端使用浏览器,浏览执行的结果,显示包含了LEFT JOIN左边销售表中的全部记录,由于销售表中并没有名称字段和价格字段,代号4的销售记录,通过 [销售 Left Join 产品 On 产品.代号 = 销售.代号] 找到产品表的名称字段和价格字段之资料,其他的代号并没有找到名称字段和价格字段之资料。

利用 Right Join...On除了取得两个表中相关连的字段记录,并包含了RIGHT JOIN右边表中的全部记录,譬如ASP程式rs26.asp如下,[Select 销售.代号, 产品.名称, 产品.价格, 销售.数量 from 销售 Right Join 产品 On 产品.代号 = 销售.代号],使用Right Join包含了RIGHT JOIN右边产品表中的全部记录:<%Set conn1 = Server.CreateObject("ADODB.Connection")conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;" Set rs3 = Server.CreateObject("ADODB.Recordset")sql = "Select 销售.代号, 产品.名称, 产品.价格, 销售.数量 from 销售 Right Join 产品 On 产品.代号 = 销售.代号" rs3.Open sql,conn1,1,1,1%><TABLE COLSPAN=8 CELLPADDING=5 BORDER=0><TR><TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">代号</FONT></TD><TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">名称</FONT></TD><TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">价格</FONT></TD><TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">数量</FONT></TD></TR><% Do while not rs3.EOF %><TR><TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(0)%></TD><TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(1)%></TD><TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(2)%></TD><TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3(3)%></TD><% rs3.MoveNext Looprs3.Close%></TABLE> 以上的 ASP程式rs26.asp,在用户端使用浏览器,浏览执行的结果,显示包含了RIGHT JOIN右边产品表中的全部记录,由于产品表中并没有数量字段,代号4的产品记录,通过 [销售 Right Join 产品 On 产品.代号 = 销售.代号] 找到销售表的数量字段之资料,其他的代号并没有找到数量字段之资料。
在ADO使用SELECT语法五
Reply content :
Photo link :
作为现代家庭的必备电器,电冰箱除了冷藏冷冻食品之外还有许多其他用途: 1、衣物上粘有口香糖难以去除,可将衣服放入冰箱,口香糖经冷冻后变脆,轻搓即可去除。 2…  Details
MySQL定时器Events的使用方法及开启关闭我们MySQL的表A的数据量已经达到1.6亿,由于一些历史原因,需要把表A的数据转移到一个新表B,但是因为这是线上产品,所以宕机时间需要尽量的短,…  Details
在《C++箴言:确保公开继承模拟“is-a”》一文中论述了 C++ 将 public inheritance(公有继承)视为一个 is-a 关系。当给定一个 hierarchy(继承体系),其中有一个 class Student 从一个 class Person 公有…  Details
概述 本文讲解了一个使用XML技术上传文件的例子,使用该方法没有传统方法中的种种限制。 这个例子讲述了如何使用MSXML3.0和ADO Stream对象来实现这种新的上传方法。好处有很多,比如,…  Details
如何判断小灵通手机是否在服务区内? 答:小灵通手机屏幕上有代表信号的伞状标志时即表明手机在服务区内,可以拨打电话。手机屏幕上没有伞状标志,则表明手机不在服务区内,…  Details
企事业单位在参加基本医疗保险的基础上,应建立单位补充医疗保险,用于职工个人账户金额用完后,个人自负达到一定数额之后的医疗补助。补充医疗保险基金按照职工工资总额的2% - 4%…  Details
微调后的住房公积金个人购房贷款政策可能会带来什么影响呢?在此,安家不动产研究院翟荣琛结合具体案例进行了分析。     新政策下如何办理公积金贷款     张小姐…  Details
各位蚕农: 目前,茧丝市场价格仍在高位运行,茧丝行情对春蚕生产十分有利。但是,由于去年秋季我市水稻病虫发生严重,水稻田农药使用种类多、使用频率高,农药在稻草中的残留量…  Details
X-Space是一套面向Web2.0应用的社区个人门户系统。它以博客(BLOG)功能为核心,结合了图片(相册)、收藏、书签(网摘)、好友圈等Web2.0应用元素,以及商品(商城)、文件(下载)、友情链接等互联网…  Details
在上一期的使用手记中,我们一起浏览了网络营销伴侣HotDMA的“DMA指数分析”栏目,初步了解了这是一个综合HotDMA的全局统计数据并进行分析得出各类HotDMA的宏观分析报告的功能应用…  Details