易截截图软件、单文件、免安装、纯绿色、仅160KB

oracle 统计每月累积购买人数

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')
order by to_char(f_buytime,'yyymm') asc

结果:
1月 100人
2月 150人
3月 50人

2 如果统计每月累积购买人数 ?
1月 100人
2月 是1月和2月的购买人数 客户有重复 值在100-250之间
3月 是1-3月的购买人数

这个该怎么写呢?
用分析函数的SUM 好像不行
1-1
select to_char(f_buytime,'yyymm'),count(distinct f_username)
from t_buy_log
WHERE to_char(f_buytime,'yyymm')='200901'

1-2
select to_char(f_buytime,'yyymm'),count(distinct f_username)
from t_buy_log
WHERE to_char(f_buytime,'yyymm') between '200901'  and '200902'


1-3
select to_char(f_buytime,'yyymm'),count(distinct f_username)
from t_buy_log
WHERE to_char(f_buytime,'yyymm') between '200901'  and '200903'
Create Table t_tmp_test As
select oldtable.tm,
(
 select/*+parallel(t,20)*/ count(distinct f_username)
 from t_Base_Prouser_Suc t where to_char(f_Expectenddate, 'yyyyMM') <= oldtable.tm
 And t.f_Source In ( Select f_buymodeid from T_base_Flat_Type Where f_department = 1)
 ) rs
from
(
select   to_char(add_months(to_date('2007-01-01','YYYY-MM-DD'),(Level-1)),'yyyymm') tm       
from dual
connect by level < months_between(to_date('2009-12-01','YYYY-MM-DD'),to_date('2007-01-01','YYYY-MM-DD'))+1
) oldtable


相关文档:

ORACLE锁信息

查看被锁的表
select   p.spid,a.serial#,
c.object_name,b.session_id,b.oracle_username,b.os_user_name   from  
v$process   p,v$session   a,   v$locked_object   b,all_objects   c  
where   p.addr=a.p ......

oracle监听启动不了

1 问题描述
oracle数据库在服务器上运行正常,但是不能通过网络连接(即使用客户端不能连接数据库,在服务器端正常,诊断的初步原因为监听器问题)。在服务器端使用以下命令:
bash-3.1$ cd $ORACLE_HOME/bin
bash-3.1$ ./lsnrctl
LSNRCTL> status
结果出现:
CONNECT (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=E ......

oracle 数据同步复制故障解决

故障解决:oracle10g 数据库复制同步
呵呵。oracle我是个菜鸟,没花功夫研究它,但我还是兼任dba,目前oracle全部是由以前的dba创建的,oracle确实好。基本没有出过问题,我也就基本不管它了,可是由于自己粗心大意,在一次修改服务器地址时候,数据库里的tns...这个配置文件忘了修改,结果导致同步失败,等我发现的时候, ......

Oracle10g r1在LINUX OS4上的安装

安装oralce10g R1(10.1)步骤方法:
第一部分:
一.  硬件环境:
   1. RAM:至少512M
    2.  交换分区大小至少1G(或者是内在的2倍)
   3./tmp目录 至少有400M空闲空间
   4. oracle软件安装空间至少在1.5G--3G之间(依据安装oracle类型而定)
 &nbs ......

Oracle 移动数据文件的操作方法

将表空间和数据文件从一个位置移动到另一个位置的操作方法
一. OFFLINE
OFFLINE 分为ALTER DATABASE 与 ALTER TABLESPACE OFFLINE,
他们的区别参看blog:http://blog.csdn.net/tianlesoftware/archive/2009/11/29/4898800.aspx
按数据文件来:
1.先将相应的数据文件 offline 
ALTER DATABASE DATAFILE 'D:\OR ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号