Oracle的SOME,ANY和ALL操作
平时很少用的这几个操作,今天遇到了。于是又看了一下文档。
SOME和ANY一样,是比较宽松的,类似于OR。满足其中任何一个都可以。
ALL要求严格一些,类似于AND,必须全部满足才可以。
不能单独使用: Must be preceded by =, !=, >, <, <=, >=.
其实更应该关注的是紧跟着的备注信息,这个一开始比较难以理解。
SOME (ANY)
Evaluates to FALSE if the query returns no rows.
ALL
Evaluates to TRUE if the query returns no rows.
做个测试吧。
先看基本信息。
SQL> select max(salary) from employees;
MAX(SALARY)
-----------
24000
SQL> select min(salary) from employees;
MIN(SALARY)
-----------
2100
SQL> select count(1) from employees;
COUNT(1)
----------
107
SQL>
再试试结果。
SQL> SELECT count(1) from employees WHERE salary >= any (select 1 from dual where 1 < 1);
COUNT(1)
----------
0
SQL> SELECT count(1) from employees WHERE salary >= some (select 1 from dual where 1 < 1);
COUNT(1)
----------
0
SQL> SELECT count(1) from employees WHERE salary <= ALL (select 1 from dual where 1 < 1);
COUNT(1)
----------
107
SQL>
相关文档:
使用数据库视图通常出于以下两个目的:1。降低操作复杂度;视图是预编译的查询操作,一次定义,之后可快速调用;2。提高系统安全。视图作为数据库对象,可以将其权限独立出来赋给用户,可避免用户对基表的盲目危险操作,同时也可屏蔽一部分私密的属性列。
定义语句:
CREATE
[OR REPLACE
]
[FORCE
|NOFORCE
......
安装oralce10g R1(10.1)步骤方法:
第一部分:
一. 硬件环境:
1. RAM:至少512M
2. 交换分区大小至少1G(或者是内在的2倍)
3./tmp目录 至少有400M空闲空间
4. oracle软件安装空间至少在1.5G--3G之间(依据安装oracle类型而定)
&nbs ......
oracle中的tz_offset是用来返回给定时区与标准时区(UTC universal of time Coordinate 通用时间坐标)的偏移量,其参数可以是:
1.一个合法的时区名
2.一个离UTC的标准偏移量
3.关键字SessionTimeZone或者是DB_timezone
其中合法的时区名可以从系统视图V$TimeZone_names中的列TZname中的得到:
TZNAME
— ......
oracle 可有什么方法 统计每月累积购买人数
比如说有个门店 2008年购买商品的人数
表:t_buy_log 字段 f_username 用户名称;购买时间f_buytime
1 如果是统计每月购买人数
select to_char(f_buytime,'yyymm'),count(distinct f_username)
from t_buy_log
group by to_char(f_buytime,'yyymm')
......