解决方案 »
- 一点问题关于索引表空间
- oracle小问题
- 求助:如何截获客户端应用程序发出的sql命令语句
- 求助:emctl start dbconsole启动失败
- 游标占用资源的问题
- win2000专业版+sp4不能安装Oracle 9i吗?怎么老报错,说某个文件不能写. Oracle 9i对系统有啥要求?
- sys_connect_by_path用法问题,谢谢大家了!!
- 能否同时安装oracle7.3 和oracle9客户端,急!!!!!
- 关于ref cursor如何释放的问题,在线等,解决后马上给分
- 出错原因请教
- 一个用户表、一个好友表,怎么查询好友最多的前三个用户???
- sql语句的请教?(查找连续数据中的一个空缺数据)
create table B
(
name number,
what varchar(20),
place varchar(20),
tim date,
money number,
last number,
primary key(name,place,tim)
)SQL> select * from B;
NAME WHAT PLACE TIM MONEY Last
---------- -------------------- -------------------- ----------- ---------- ----------
1 1 超市 2012/4/13 12
1 1 超市 2012/4/11 13
1 0 超市 2012/4/10 14
2 1 学校 2012/4/7 16
2 1 学校 2012/4/16 31
2 1 学校 2012/4/26 12
6 rows selected
是某人去某地买东西last=前面一个日期在同一个地方买的东西的钱,不为0不为空的数据,what=0的数据不算在内
(
select '1' as name,'1' as what,'超市' as place,sysdate as tim, 12 as money from dual
union all
select '1' ,'1' ,'超市',sysdate-1, 15 from dual
union all
select '1' ,'0' ,'超市',sysdate+1, 25 from dual
union all
select '2' ,'1' ,'学校',sysdate, 35 from dual
union all
select '2' ,'1' ,'学校',sysdate-1, 45 from dual
union all
select '2' ,'1' ,'学校',sysdate-2, 55 from dual)
where what = '1'
--结果
NAME WHAT PLACE TIM MONEY LAST
---- ---- ----- ------------------------- ---------------------- ----------------------
1 1 超市 2012-04-12 16:47:30 15
1 1 超市 2012-04-13 16:47:30 12 15
2 1 学校 2012-04-11 16:47:30 55
2 1 学校 2012-04-12 16:47:30 45 55
2 1 学校 2012-04-13 16:47:30 35 45