网站大量收购独家精品文档,联系QQ:2885784924

初级sql开辟指南.doc

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
初级sql开辟指南

初级SQL开发指南 Select语句概要 数据库中数据的提取(查询)使用select 语法,主要有以下几点作用 提取的数据(有哪些信誉好的足球投注网站) 提取的数据进行排序(排序) 执行计算或汇总 Select文表达方法 Select 列名1,列名2 Select 列名1,列名2 ← 查询要显示的列结果 From 表名 ← 数据库中表名 Where 查询条件 ← 条件表达式 SQL文处理Select 语句顺序步骤 我们将说明数据库在处理查询的时候,不同阶段都会产生中间结果表.这些产生出来的中间结果表都是在数据库后台运行的我们无法观察到.我们最终看到的数据就是最后的中间结果表.从句from从数据库中检索出来第一个中间结果表开始,到select从句结束.分为以下几步 From 指定查询的表1通过from关键字将要查询的表中的所有数据读 From 指定查询的表 取到中间结果表。(包括表中所有数据行与列,行 数不变,列数不变) Where选择满足条件的行 Where选择满足条件的行 2在where关键字后面加上要读取数据的条件,生 成一个新的中间结果表。 Group by分组 Group by分组 3 如果业务需要分组,可以通过Group by 将视图进 行分组,在次生成一个新的中间结果表。 having 分组 having 分组条件 4 使用having关键字为分组后的逻辑视图进行条件 筛选,来生成一个中间结果表。 select 选择列 select 选择列 5 通过select语句在最终的中间结果表中选择列。 查询数据时,数据库后台中间结果表变化过程 我们将从数据库在执行SQL查询计划的时候,数据库内部的变化与运行的原理来理解SQL语句执行过程.(数据库中分为2种视图,1为物理视图通过create view 语句创建,2为逻辑视图,就是我们提到的中间结果表) (人员信息表) 编号 名称 部门 职务 年龄 性别 电话 122 李晶晶 人力 职员 26 女 2234555 123 张金 人力 职员 29 男 3322123 124 王力 机材 经理 35 男 2245553 125 李心 机材 职员 21 女 3332233 例:给出所有职务为职员的用户名称,部门,电话. 步骤一 执行from 表名称(人员信息表),数据库会在(人员信息表)表中进行一个全表扫描,将所有表信息放入一个逻辑视图中, 逻辑视图包括表中的全部的行于列的数据. 步骤一 产生的中间结果表 122 李晶晶 人力 职员 26 女 2234555 123 张金 人力 职员 29 男 3322123 124 王力 机材 经理 35 男 2245553 125 李心 机材 职员 21 女 3332233 步骤二 通过where职务=职员 的判断条件将步骤一中产生的逻辑视图的数据进行过滤,将满足条件的行产成一个新的逻辑视图. 步骤二 产生的中间结果表 122 李晶晶 人力 职员 26 女 2234555 123 张金 人力 职员 29 男 3322123 125 李心 机材 职员 21 女 3332233 步骤三 通过select 名称,部门,电话 语句把步骤二的逻辑视图中,名称,部门,电话列的数据取出生成一个新视图.select 语句指定那些列必须出现在最终逻辑视图中. 步骤三 产生的中间结果表 李晶晶 人力 2234555 张金 人力 3322123 李心 机材 3332233 步骤四 将产生的逻辑视图发送到客户端.完成本次SQL查询计划. SQL编写顺序与逻辑视图生成过程. Select 名称,部门,电话 ← 步骤三 生成最终逻辑视图 From 员工信息表 ← 步骤一 生成全表逻辑视图 Where 职务=职员 ← 步骤二 生成符合条件的逻辑视图 多表信息查询表达方法 Select 表1.列名, 表2.列名 ← 选择要表示的列 From 表1, 表2 ← 要合并查询的表 Where 表1.ID1=表2.ID1 ← 多表连接条件 当多个表进行联合查询的时候,会发生一张表(A)中的数据行乘以别一张表(B)中的数据行,也就是A*B=所有查询数据.该结果产生的合并表数据被我们称为笛卡儿积.通常笛卡儿积会产生很多重复行的数据,我们要使用连接条件也就是A表和B表中指定的连接列来过滤掉重复和多余的笛卡儿积. A 表B表 A 表 B表 笛卡儿积 A*B中间结果表 WHERE 选择符合条件的行,生成中间结果表 SELECT 选择列 生成最终结果 通过from关键字后的表名称,到数据库中

文档评论(0)

f8r9t5c + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档