select * from t (
select tab.*,rank() over (partition f2 order by f3 asc) rk ) t where t.rk=1;
select tab.*,rank() over (partition f2 order by f3 asc) rk ) t where t.rk=1;
解决方案 »
- 您好,请问从哪入手学习ORACLE
- 急救!ASP.NET连接远程oracle数据库时:ORA-00603: ORACLE 服务器会话因致命错误而终止
- 请问如何通过程序提取alert_SID.log中的死锁信息
- 在SQL server 中DATEDIFF函数,在Oracle中用那个?
- drop partition 的疑问
- JDBC Statement 批量更新数据的性能问题
- 一个简单的SQL语句问题,解决马上结帖!
- 请问*.ora文件怎样打开啊?
- 80分求救--奇怪 又 搞笑 的 oracle连接问题!!求救!!
- 我是oracle初学者,关于倒入表的问题,望大侠教我.
- 函数问题
- proc中使用游标的疑问,请指教
union all
select * from tab b where b.f2,b.f3,b.f4 in (select c.f2,min(c.f3),c.f4 from tab c group by c.f2,c.f4) and b.f3 is not null
-------------------- -------------------- -------------------- --------------------
1 小王 2 局长
2 小王 4 科长
3 小王 5 厅长
4 小李 1 省长
5 小李 2 局长
6 小张 科员6 rows selectedSQL>
SQL> select * from (
2 select testd.*,rank() over (partition by f2 order by f3 asc) rk from testd) t where t.rk=1 order by f1;F1 F2 F3 F4 RK
-------------------- -------------------- -------------------- -------------------- ----------
1 小王 2 局长 1
4 小李 1 省长 1
6 小张 科员 1
[code]
12:47:11 SQL> select * from t; F1 F2 F3 F4
---------- -------------------- ---------- --------------------
1 小王 2 局长
2 小王 4 科长
3 小王 5 厅长
4 小李 1 省长
5 小李 2 局长
6 小张 科员6 rows selected.Elapsed: 00:00:00.00
12:47:29 SQL> select distinct
12:47:38 2 first_value(f1) over (partition by f2 order by f3 nulls first) f1,
12:47:52 3 f2,
12:47:56 4 first_value(f3) over (partition by f2 order by f3 nulls first) f3,
12:48:07 5 first_value(f4) over (partition by f2 order by f3 nulls first) f4
12:48:15 6 from t
12:48:16 7 / F1 F2 F3 F4
---------- -------------------- ---------- --------------------
4 小李 1 省长
1 小王 2 局长
6 小张 科员Elapsed: 00:00:00.00
12:48:16 SQL>
[/code]