加入收藏
联系我们
关于我们
 您现在的位置: 亿聪 >> 网络学院 >> 网络编程 >> ASP >> [专题]在ASP中使用SQL语句 >> 正文  
  在ASP中使用SQL语句之12:连接         ★★★
在ASP中使用SQL语句之12:连接
[ 作者:ZDNET CHINA    转贴自:ZDNET CHINA    点击数:3707    更新时间:2003/8/28    文章录入:亿聪 ]
任何熟悉SQL和关系数据库的人都遇见过大量的连接类型。最简单的说,连接(join)会把两个表的内容组合到一个虚拟表或者recordset内。假如数据表有效地规一化,或许你会经常从某一个表中选出特定的信息再从另一个表中选出关联信息。这样做就需要简单的“同等连接(equijoin)”。

为了了解实际的连接操作,现在让我们假设在一个数据库内存放了某类软件的相关记录。某个表(Software)包含了软件产品的名称、软件的版本以及其他有关细节:[image004.gif]

另一个表(Releases)则存储了软件发布历史的信息,其中包括发布日期和发布状态等(比如测试版、当前版、过时等):[image005.gif]


上表中还包含了一个列,内容指向软件表中采用的ID号。所以,通过这种索引软件表的方式,你就知道发布表中software_ID 等于 2的软件是Rome。

你采用连接组合信息,这样就不需要在两个表之间来回折腾了。不过,除了组合信息之外还可以通过连接把有关信息合并。这样,只要发布表内的software_ID 匹配软件表内的ID,你就把匹配信息一起放到一个记录内。

代码如下:
SQL = "SELECT * FROM Software, Releases WHERE software.ID = releases.softwareID"

仔细分析以上的语句,首先注意到两个表名列在了FROM的后面。再根据所采用的连接,今后你可能还会发现语法会有所变化(或者连接类型有变),但是以上的语法是最基本的,显示了数据的联合选择方式。这里的WHERE 子句用来比较特定的ID值。在Software 表内,存在ID 列。同样的,Releases 表内则有个software_ID 列。为了明确你在WHERE 子句里要比较的值,你用表名作为前缀,后面还加上了一个点号(.)。

以下是连接选取数据之后的结果:[image006.gif]


注意:在创建连接的时候要仔细考虑选出数据的列。以上代码采用 * 通配符是为了让读者关注于SELECT 代码行的其他部分。但是,正如你从上图看到的那样,你无法选出softwareID 列,因为这一列没有作为recordset部分的增加值。它的作用就是为WHERE 子句所用。


  • 上一篇文章: 在ASP中使用SQL语句之11:记录统计

  • 下一篇文章: 一段JMail(4.3版本)发送代码
  • 发表评论】【告诉好友】【打印此文】【关闭窗口
     最新5篇热点文章
  • Knoppix 4.0.2 免硬盘免安…[15050]

  • 通过ASP记录进行分页[19238]

  • ASP开发准则[11189]

  • ASP组件指南[11160]

  • ASP指南[11172]

  •  
     最新5篇推荐文章
  • Knoppix 4.0.2 免硬盘免安…[15050]

  • 如何让Win 2003系统更加安…[12416]

  • Nero超刻简明教程[33930]

  • PS商业实战-来杯茶,行吗?…[7072]

  • ASP深度揭密(下)[12184]

  •  
     相 关 文 章
  • 编写安全的 Transact-SQL[4065]

  • SQL的详细语法介绍——对于…[4452]

  • SQL的详细语法介绍——对于…[4409]

  • SQL的详细语法介绍——对于…[4307]

  • SQL的详细语法介绍——对于…[4163]


  •   网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
        没有任何评论
    设为首页 | 加入收藏 | 关于我们 | 联系我们 | 友情链接 | 版权声明 | 管理登录
    Copyright © 2000-2022 Yicong.com.All Rights Reserved.
    亿聪 版权所有 E-mail: