因为很少用到, 所以几乎忘记了这几个函数, 不过它们还是很有用的使用它们可以大大简化一些SQL文的语法, 至于效率问题,
如CCW所说它们和EXISTS, IN 之类没有什么差别, 而且要具体问题具体分析
其中ANY和SOME在意思上是相同的,
可以相互替代.
举几个例子来说明ALL和ANY的用法
1. SELECT * FROM TABLEA WHERE FLD > ALL(SELECT FLD FROM TABLEA)
这相当于
SELECT * FROM TABLEA WHERE FLD > (SELECT MAX(FLD) FROM TABLEA)
2. SELECT * FROM TABLEA WHERE FLD > ANY(SELECT FLD FROM TABLEA)
这相当于
SELECT * FROM TABLEA WHERE FLD > (SELECT MIN(FLD) FROM TABLEA)
3. SELECT * FROM TABLEA WHERE FLD = ANY(SELECT FLD FROM TABLEA)
这相当于
SELECT * FROM TABLEA WHERE FLD IN (SELECT FLD FROM TABLEA)
最后, 关于HAVING它是用于合计计算的运算符, 它和WHERE有着不同的含义
当使用GROUP时HAVING是对各组中的记录进行比较的意思,
换句话说它是选择一组数据的条件
而WHERE则和分组无关, 它是选择一行数据的条件
比如,
SELECT NAME, AVG(PRICE) FROM STORE GROUP BY NAME HAVING AVG(PRICE) > 10
这里的HAVING是WHERE无法替代的
至于效率, WHERE是在生成结果集之前就完成的处理,
而HAVING则要等到结果集做成后在循环执行的处理, 自然效率要低一些, 因此在只需要对行进行操作的时候, 不要使用HAVING。
相关推荐
oracle 函数大全oracle 函数大全oracle 函数大全oracle 函数大全oracle 函数大全oracle 函数大全oracle 函数大全
oracle函数大全 oracle函数大全 oracle函数大全
oracle函数介绍 1 著名函数之单值函数 pdf oracle函数介绍 2 非著名函数之单值函数 pdf oracle函数介绍 3 著名函数之聚合函数 pdf oracle函数介绍 4 非著名函数之聚合函数 pdf oracle函数介绍 5 分析函数简述 ...
postgresql 兼容 oracle 函数, postgresql 兼容 oracle 函数,postgresql 兼容 oracle 函数, postgresql 兼容 oracle 函数
Oracle函数.chm
oracle函数大全,oracle函数大全,oracle函数大全,oracle函数大全,
oracle中any和all区别 详细讲解ORACLE技巧
oracle 函数大全 参考函数 手册 速查 chm格式。。。
Oracle自定义函数返回一张表。主要用于生成一张等时间间隔的表数据。
Oracle函数.txt Oracle函数.txt Oracle函数.txt
oracle函数大全,介绍各自oracle函数1111111111111111111
ORACLE函数及其用法ORACLE函数及其用法ORACLE函数及其用法ORACLE函数及其用法ORACLE函数及其用法
ORACLE函数.pdfORACLE函数ORACLE函数.pdf
ORACLE函数介绍 ORACLE函数介绍 ORACLE函数介绍 ORACLE函数介绍 ORACLE函数介绍 ORACLE函数介绍
oracle函数大全.chm oracle函数大全.chm
Oracle函数学习资料,包含各种常用Oracle函数。
ORACLE函数大全
Oracle函数大全 Oracle函数大全 Oracle函数大全Oracle函数大全
oracle函数大全.doc oracle函数大全.doc oracle函数大全.doc oracle函数大全.doc
Ora9iSQL参考手册 oracle函数大全 分类显示 Oracle函数大全 Oracle函数手册 ORACLE九阴真经 oracle知识库 SQLCodes Oracle错误代码与消息解释 SQL语言参考大全