动态网站设计十八般武艺——ASP篇(十一)
作者:未知 来源:chinabyte 添加时间:2006-5-21 10:27:44相 信 很 多 朋 友 都 听 说 过 SQL 这 个 名 字,如 果 你 是 计 算 机 方 面 的 行 家,SQL 的 大 名 一 定 是 如 雷 贯 耳。那 么 SQL 究 竟 是 什 么 呢?SQL 一 词 实 际 上 是 "Structured Query Language" 结 构 式 查 询 语 言 的 缩 写,是 用 于 对 存 放 在 计 算 机 数 据 库 中 的 数 据 进 行 组 织、管 理 和 检 索 的 一 种 工 具;是 一 种 特 定 类 型 的 数 据 库 -- 关 系 数 据 库。而 控 制 这 种 数 据 库 的 计 算 机 程 序 就 是 我 们 常 说 的 DBMS-- 数 据 库 管 理 系 统。譬 如:SQL Server、Oracle、Sybase、DB2 等 等。当 用 户 想 要 检 索 数 据 库 中 的 数 据 时,就 通 过 SQL 语 言 发 出 请 求,接 着 DBMS 对 该 SQL 请 求 进 行 处 理 并 检 索 所 要 求 的 数 据,最 后 将 其 返 回 给 用 户,此 过 程 被 称 作 为 数 据 库 查 询,这 也 就 是 数 据 库 查 询 语 言 这 一 名 称 的 由 来。
SQL 并 不 是 象 C、COBOL 和 Fortran 语 言 那 样 的 完 整 的 计 算 机 语 言。SQL 没 有 用 于 条 件 测 试 的 IF 语 句,也 没 有 用 于 程 序 分 支 的 Goto 语 句 以 及 循 环 语 句 For 或 Do。确 切 的 讲,SQL 是 一 种 数 据 库 子 语 言,SQL 语 句 可 以 被 嵌 入 到 另 一 种 语 言 中,从 而 使 其 具 有 数 据 库 存 取 功 能。SQL 也 非 严 格 的 结 构 式 语 言,它 的 句 法 更 接 近 英 语 语 句,因 此 易 于 理 解,大 多 数 SQL 语 句 都 是 直 述 其 意,读 起 来 就 象 自 然 语 言 一 样 明 了。SQL 还 是 一 种 交 互 式 查 询 语 言,允 许 用 户 直 接 查 询 存 储 数 据,利 用 这 一 交 互 特 性,用 户 可 以 在 很 短 的 时 间 内 回 答 相 当 复 杂 的 问 题,而 同 样 问 题 若 让 程 序 员 编 写 相 应 的 报 表 程 序 则 可 能 要 用 几 个 星 期 甚 至 更 长 时 间。
在 大 部 分 ASP 应 用 程 序 中 我 们 都 会 接 触 到 数 据 库,而 我 们 在 编 写 ASP 应 用 程 序 时 用 来 进 行 数 据 库 操 作 的 标 准 语 法 正 是 SQL,因 此 SQL 语 法 的 重 要 性 是 不 言 而 喻 的。下 面,我 们 就 从 最 常 用 的 SQL 语 句 SELECT 着 手,一 步 一 步 地 来 学 习 SQL。
查 询 是 SQL 语 言 的 核 心,而 用 于 表 达 SQL 查 询 的 SELECT 语 句 则 是 功 能 最 强 也 是 最 为 复 杂 的 SQL 语 句,它 从 数 据 库 中 检 索 数 据,并 将 查 询 结 果 提 供 给 用 户。在 本 文 中 我 们 将 建 立 一 个 名 为 tianjiao 的 简 单 数 据 库,该 库 中 存 放 了 一 个 叫 sales 的 销 售 记 录 表,如 下 所 示 :
姓名 性别 工资 销售目标 销售额 地区
书生 男 2500 8000 9000 上海
吴冠军 男 3000 10000 9999 北京
雷鸣 男 2000 8000 10000 四川
雪儿 女 2500 5000 6000 广州
顾一 男 2600 9000 9800 大连
阿卓 女 2000 4000 4000 天津
熠天 男 4000 20000 20000 全国
在 该 表 中 有 六 列 即 六 个 字 段 : 姓 名、性 别、工 资、销 售 目 标、销 售 额、地 区,首 先 我 们 用 Select 语 句 列 出 姓 名、销 售 目 标 和 销 售 额 :
Select 姓 名,销 售 目 标,销 售 额 From sales
结 果 如 下 :
姓名 销售目标 销售额
书生 8000 9000
吴冠军 10000 9999
雷鸣 8000 10000
雪儿 5000 6000
顾一 9000 9800
阿卓 4000 4000
熠天 20000 20000
然 后,我 们 再 列 出 所 有 男 性 的 姓 名、销 售 目 标 和 销 售 额 :
Select 姓 名,销 售 目 标,销 售 额 From sales Where 性 别 =" 男 "
结 果 如 下 :
姓名 销售目标 销售额
书生 8000 9000
吴冠军 10000 9999
雷鸣 8000 10000
顾一 9000 9800
熠天 20000 20000
接 下 来,我 们 做 一 个 相 对 复 杂 的 查 询,列 出 销 售 额 大 于 销 售 目 标 的 所 有 男 性 的 姓 名、销 售 目 标 和 销 售 额,并 且 按 销 售 目 标 排 序。
Select 姓 名,销 售 目 标,销 售 额
Form sales
Where 销 售 额 > 销 售 目 标
And 性 别 =" 男 "
Order By 销 售 目 标
结 果 如 下 :
姓名 销售目标 销售额
书生 8000 9000
雷鸣 8000 10000
顾一 9000 9800
熠天 20000 20000
大 家 可 以 看 到,对 于 简 单 查 询,SQL Select 语 句 和 英 文 语 法 很 相 象,我 们 来 分 析 一 下 SELECT 语 句 的 完 整 格 式,它 包 括 六 个 子 句,其 中 SELECT 和 FROM 子 句 是 必 须 的,其 它 子 句 可 以 任 选,每 个 子 句 的 功 能 如 下 :
1、Select 子 句 列 出 所 有 要 求 SELECT 语 句 检 索 的 数 据 项。它 放 在 SELECT 语 句 开 始 处,指 定 此 查 询 要 检 索 的 数 据 项。这 些 数 据 项 通 常 用 选 择 表 表 示,即 一 组 用“,”隔 开 的 选 择 项。按 照 从 左 到 右 的 顺 序,每 个 选 择 项 产 生 的 一 个 列 的 查 询 结 果,一 个 选 择 项 可
站内搜索