DONKNOW 3B 175 65 23 50 10 1 4 15
WORLEY LF 157 49 15 35 8 3 3 16
DAVID OF 187 70 24 48 4 0 17 42
HAMHOCKER 3B 50 12 10 10 2 0 0 13
EMAIL wyhsillypig@163。 62
…………………………………………………………Page 63……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪
CASEY DH 1 0 0 0 0 0 0 1
COUNT
该函数将返回满足 WHERE 条件子句中记录的个数 例如你想知道都有哪一个球员的
击球数小于 350 可以这样做
输入/输出
SQL》 SELECT COUNT( ) FROM TEAMSTATS WHERE HITS/AB 。35
COUNT( )
4
为了使这段代码更易读 可以使用别名
输入/输出
SQL》SELECT COUNT( ) NUM_BELOW_350 FROM TEAMSTATS
WHERE HITS/AB 。35
NUM_BELOW_350
4
如果我们用列名来替换掉括号中的星号时会结果与原来有什么不同呢 试一下
SQL》 SELECT COUNT(NAME) NUM_BELOW_350 FROM TEAMSTATS
WHERE HITS/AB 。35
NUM_BELOW_350
4
结果是一样的 因为你所选择的NAME 列与 WHERE 子句并不相关 如果你在使用 count
时无 WHERE 子句 那么它将会返回表中的所有记录的个数
输入/输出
SQL》 SELECT COUNT( ) FROM TEAMSTATS
COUNT( )
6
SUM
SUM 就如同它的本意一样 它返回某一列的所有数值的和 如果想知道队员总打点的
总和是多少 试一下
EMAIL wyhsillypig@163。 63
…………………………………………………………Page 64……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪
输入
SQL》SELECT SUM(SINGLES) TOTAL_SINGLES FROM TEAMSTATS
输出
TOTAL_SINGLES
174
如果想得到多个列的和 可按如下所做
输入/输出
SQL》 SELECT SUM(SINGLES) TOTAL_SINGLES SUM(DOUBLES)
TOTAL_DOUBLES SUM(TRIPLES) TOTAL_TRIPLES SUM(HR) TOTAL_HR
FROM TEAMSTATS
TOTAL_SINGLES TOTAL_DOUBLES TOTAL_TRIPLES TOTAL_HR
174 32 5 29
类似地 如果想找一下所有的点数在 300 包括 300 以上的的队员 则语句如下
输入/输出
SQL》SELECT SUM(SINGLES) TOTAL_SINGLES SUM(DOUBLES) TOTAL_DOUBLES
SUM(TRIPLES) TOTAL_TRIPLES SUM(HR) TOTAL_HR FROM TEAMSTATS
WHERE HITS/AB 》=。300
TOTAL_SINGLES TOTAL_DOUBLES TOTAL_TRIPLES TOTAL_HR
164 30 5 29
想估计一下一个球队的平均中球率
输入/输出
SQL》SELECT SUM(HITS)/SUM(AB) TEAM_AVERAGE FROM TEAMSTATS
TEAM_AVERAGE
。33706294
SUM 只能处理数字 如果它的处理目标不是数字 你将会收到如下信息
输入/输出
SQL》SELECT SUM(NAME) FROM TEAMSTATS;
ERROR
ORA…01722 invalid number
no rows selected
该错误信息当然的合理的 因为NAME 字段是无法进行汇总的
EMAIL wyhsillypig@163。 64
…………………………………………………………Page 65……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪
AVG
AVG 可以返回某一列的平均值 如果你想知道漏球的平均数请看下例
输入
SQL》SELECT AVG(SO) AVE_STRIKE_OUTS FROM TEAMSTATS
输出
AVE_STRIKE_OUTS
16。166667
下边的例子反映了 SUM 与 AVG 的不同之处
输入/输出
SQL》SELECT AVG(HITS/AB) TEAM_AVERAGE FROM TEAMSTATS
TEAM_AVERAGE
。26803448
分析
可是在上一个例子中的打中率是。3370629 这是怎么回事呢 AVG 计算的是打中的次
数与总打击次数商的平均值 然而在上一个例子中是对打中次数和打击次数分别求和后在
进行相除的 举例来说 A 队员打了 100 杆 中了 50 次 那么他的平均值是 0。5 B 队员
打了 1 杆 没打中 他的平均值是 0。0 而 0。0 与 0。5 的平均值是 0。25 如果你按打 101 杆
中 50 杆计算 那么结果就会是正确的了 下边的例子将会返回正确的击中率
输入/输出
SQL》SELECT AVG(HITS)/AVG(AB) TEAM_AVERAGE FROM TEAMSTATS
TEAM_AVERAGE
。33706294
与 SUM 函数一样 AVG 函数也只能对数字进行计算
MAX
如果你想知道某一列中的最大值 请使用 MAX 例如 你想知道谁的打点最高
输入
SQL》SELECT MAX(HITS) FROM TEAMSTATS
EMAIL wyhsillypig@163。 65
…………………………………………………………Page 66……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪
输出
MAX(HITS)
70
你能从这里知道是谁打的最多吗
输入/输出
SQL》SELECT NAME FROM TEAMSTATS WHERE HITS=MAX HITS
ERROR at line 3
ORA…00934 group function is not allowed here
很不幸 你不能 这一信息提示你汇总函数无法在 WHERE 子句中使用 但是请别灰
心 在第 7 天的 子查询 深入 SELECT 语句 将引入子查询的概念并会给出知道谁是打
点最多人解决方案
如果把它用的非数字场合会有什么情况出现呢
输入/输出
SQL》SELECT MAX(NAME) FROM TEAMSTATS
MAX(NAME)
WORLEY
这是一个新现象 MAX 返回了最高的字符串 最大的是 z 所以说 MAX 既可以处
理数值也可以处理字符
MIN
MIN 与 MAX 类似 它返回一列中的最小数值 例如 你想知道打杆的最小值是多少
输入
SQL》SELECT MIN AB FROM TEAMSTATS
输出
MIN(AB)
小说推荐
- SQL语言艺术(PDF格式)
- -Page 1-SQLSSQQLL语言艺术内容介绍本书分为12章,每一章包含许多原则或准则,并通过举例的方式对原则进行解释说明。这些例子大多来自于实际案例,对九种SQL经典查询场景以及其性能影响讨论,非常便于实践,为你数据库应用维护人员阅读。资深 SQL 专家 Stéphane Faroult倾力打
- 其他
- 最新章:第27章
- oracle从入门到精通(PDF格式)
- -Page 1-Oracle 从入门到精通-Page 2-资源来自网络,仅供学习 Oracle 从入门到精通一、SQL 8
- 其他
- 最新章:第37章
- VB2008从入门到精通(PDF格式英文版)
- -Page 1(R)The eXperT’s Voice inBeginningVB 2008From Novice to ProfessionalChristian Gross-Page 2-Page 3-Beginning VB 2008From Novice to Professional■C
- 其他
- 最新章:第214章
- C语言游戏编程从入门到精通(PDF格式)
- -Page 1-Page 2-Page 3-Page 4-Page 5-Page 6-Page 7-Page 8-Page 9-Page 10-Page 11-Page 12-Page 13-Page 14
- 其他
- 最新章:第4章
- JMS简明教程(PDF格式)
- -Page 1-JMS1.1规范中文版卫建军2007‐11‐22-Page 2
- 其他
- 最新章:第28章
- C语言实例教程(PDF格式)
- -Page 1-前 言Visual C+是开发运行于Windows 95和Windows NT环境下的Win32应用程序的可视化编程工具中最重要的成员之一,它为软件开发人员提供了完整的编辑、编译和调试工具和建立于Win32 API(ApplicationProgramming Interface)基
- 其他
- 最新章:第143章
- 深入浅出MFC第2版(PDF格式)
- -Page 1-Page 2-山高月小山高月小 水落石出水落石出山高月小山高月小 水落石出水落石出-Page 3-深入淺出MFC(第版 使用Visual C 5.0 MFC 4.2)Dissecting MFC(Second Edition Using Visual C 5.0 MFC 4.2)侯俊
- 其他
- 最新章:第309章
- 软件工程实践者的思想(PDF格式)
- -Page 1-大 道 至 简—软件工程实践者的思想周爱民(Aimingoo 著-Page 2-序2004 年 11 月初爱民(Aimingoo)第一次把他的书稿给我,我翻看了一下,第一反应讲的是感想。这不错,在技
- 其他
- 最新章:第26章
- 电子电路大全(PDF格式)
- -Page 1-电力生产人员技能培训电路基础部分电路基础部分电电路路基基础础部部分分-Page 2-一、电路的基本概念和基本定律-Page 3-考试点1o 1、掌握电阻、独立电压源、独立电流源、11受控源、电容、电感、耦合电感、理想变压器诸元件的定义、性质2o 2、掌握电流、电压参考方向的概念223
- 其他
- 最新章:第353章