《SQL 21日自学通(V3.0)(PDF格式)》第21章


输入 
SQL》 select DISTINCT amount from checks; 
输出 
EMAIL wyhsillypig@163。 38 
…………………………………………………………Page 39……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪 
AMOUNT 
25 
25。1 
98 
50 
200。32 
245。34 
6 rows selected 
分析 
注意只有六行数据被选择 这是因为你使用了 DISTINCT 所有只有不重复的数据才 
会被显示 ALL 是在 SELECT 中默认的关键字 你几乎从来也不会用到 ALL 因为 SELECT 
与 SELECT ALL 是等价的 
试一下这个例子 作为你对 SQL 的第一次 也是唯一的一次 实际体验 
输入 
SQL》 SELECT ALL AMOUNT 
FROM CHECKS; 
输出 
AMOUNT 
150 
245。34 
200。32 
98 
150 
25 
25。1 
7rowsselected。 
它的结果与 SELECT 是相同的 谁还会再去用这个多余关键字呢 
总结 
关键字 SELECT 可以检索数据库并从中返回数据 你可以用一个很长的语句并使用 
SELECT *来检索数据库中的所有表 而且你可以对指定表格的结果进行重新排序 而关键 
EMAIL wyhsillypig@163。 39 
…………………………………………………………Page 40……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪 
字 DISTINCT 则会强制性地要求返回的结果中不能有重复数据 明天我们将学习如何使您 
的查询更具有选择性 
问与答 
问 这些数据是从哪里来的 我们是如何得到它的 
答 数据是按照第 8 天所讲述的方法创建的 与数据库的联接是依靠你所使用的 SQL 它 
以传统的命令行方式与数据库进行会话 该数据库原来属于服务器或客户机范畴 但 
最近它已经被移植到了 PC 机上 
问 可是我用不到这些数据库 那我还可以用 SQL 干什么 
答 你也可以在编程语言中使用 SQL 一般的编程语言都支持内嵌的 SQL 例如 COBOL 
你可以在它的环境中写 SQL 并编译 而 Microsoft 公司则提供了应用程序接口函数以 
允许编程人员在 Visual Basic C 或 C++ 中使用 SQL Sybase and Oracle 提供的库也 
允许你在编程时使用 SQL Borland 公司则将 SQL 置于 Delphi 中 本书中也将讨论 SQL 
在编程中的应用 
校练场 
在校练场里我们提出了一些问题以帮助你巩固自己所学 这些练习可以提高你在学习 
中的经验 请试着回答和练习附录五 问答与练习 中的内容 在开始明天的工作之前要 
确保你已经知道了这些问题的答案 
1 下列语句所返回的结果是否相同 
SELECT * FROM CHECKS; 
select * from checks 
2 为什么下列查询不会工作 
a。 Select * b。 Select * from checks 
c。 Select amount name payee FROM checks; 
3
A select * 
From checks 
B select * from checks 
EMAIL wyhsillypig@163。 40 
…………………………………………………………Page 41……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪 
C select * from checks 
/ 
练习 
1 使用今天早些时候的 CHECKS 表的数据来写一个查询 返回表中的 number 和 remark 
列中的数据 
2 将练习 1 中的查询再写一遍以使得remark 列出现在第一位 
3 使用 CHECKS 表 写一个查询来返回其中的不重复数据 
EMAIL wyhsillypig@163。 41 
…………………………………………………………Page 42……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪 
第三天 表达式 条件语句与运算 
目标 
在第二天我们学习了使用 SELECT 语句和 FROM 语句来对数据进行有趣味性 也是非常有 
用的 运算 在今天我们将对昨天学习的进行进一步的扩充 我们将把新的方法应用到查 
询 表和行中 引进新的子句和被称为运算的批量处理方法 在第三天的阳光下 你将学 
会 
知道什么叫作表达式以及如何来使用它们 
知道什么叫作条件语句以及如何来使用它们 
熟悉基本的子句 WHERE 的使用 
可以用算术 比较 字符和逻辑表达式来建立一个运算 
学会将多种不同的运算结合在一起使用 
注 在今天的学习中我们来使用 PERSONAL ORACLE7 来进行应用举例 其它的 SQL 环 
境在命令运算以及结果显示上与它稍有不同 但在遵循 ANSI 标准的基础上它们的结果应 
该是相同的 
表达式 
表达式的定义非常简单 表达式可以返回一个值 表达式的类型非常广泛 它以包括各种 
类型的数据如数字 字符 以逻辑型等 其实在下列子句 如 SELECT 和 FROM 中所占 
成分中表达式最大 在下边的例子中 amount 就是一个表达式 它可以返回 amount 列中的 
数据 
SELECT amount FROM checks 
而在下列语句中 NAME ADDRESS PHONE ADDRESSBOOK 是表达式 
SELECT NAME; ADDRESS; PHONE 
FROM ADDRESSBOOK 
现在 请检查一下下边的表达式 
WHERE NAME = "BROWN" 
这里 NAME = "BROWN" 是一个条件语句 这是一个逻辑形表达式的实例 NAME = 
"BROWN"将根据=号来返回值 TRUE 或 FALSE 
条件 
如果你想在数据库中查找一个或一组特定的信息 你需要使用一个或更多的条件 条件可 
以包含在WHERE 子句中 在上一个例子中 条件就是 
NAME = "BROWN" 
如果你想知道在你们单位中上一个月有谁的工作时间超过了 100 个小时 你可能会写出下 
边的条件语句 
NUMBEROFHOURS 》 100 
条件语句可以让你建立一个选择查询 在大多数情况下 条件中包括变量 常量和比较运 
算 在第一个例子中的变量是 NAME 常量是"BROWN" 而比较运算符则为= 在第二个 
例子中变量为 NUMBEROFHOURS;常量为 100 而比较运算符则是》 当您准备写一个条 
件查询时你需要知道两个元素 WHERE 子句和运算 
WHERE 子句 
Where 子句的语法如下 
WHER
小说推荐
返回首页返回目录