Table:
F1 F2
1 1,9
2 1,8
怎样检索出结果集中一条F2最长的记录
F1 F2
1 1,9
2 1,8
怎样检索出结果集中一条F2最长的记录
解决方案 »
- ORACLE拆分数据表
- 執行成功但結果不對
- oracle 数据库 一张表被锁住了 手动执行insert语句挂起!急。。。。
- 执行Update后,没有commit,退出PLSQL DEVEPLORE再登陆,SELECT出的结果为什么是UPDATE后的?
- 初学Oracle,问一个时间段排序的问题。根据三个月内,点击率CTR从高到低排序整个表。
- sqlplus登录问题
- 请解释
- 三行代码的触发器老出错。
- 关于用UPDATE语句不能更新的问题!
- oracle报无效数字,请问我怎么查出来哪个数值有问题?
- Oracle 为什么不用我的索引呢?
- 散分了,请各位看看这条 “SQL”语句,请多多指教,我怎么用它分页显示呢?
F1 F2
1 1,9
2 1,8,2
上面检索出
F1 F2
2 1,8,2
比如:
F1 F2
1 1,9
1 1,8,2
2 1,9
2 1,8,2
2 1,3,2,1上面检索出
F1 F2
1 1,8,2
2 1,3,2,1
(select f1,f2,f2.length as fn
from tablename) a,(select f1,max(f2.length) as fn
from tablename group by f1) b
where a.fn=b.fn
and a.f1=b.f1
from
(select f1,f2,f2.length as fn
from tablename) a
DISTINCT FIRST_VALUE(A.F1)OVER(PARTITION BY A.F1 ORDER BY A.LEN_F2 DESC) AS F1,
FIRST_VALUE(A.F2) OVER(PARTITION BY A.F1 ORDER BY A.LEN_F2 DESC) AS F2
FROM (SELECT F1,F2,LENGTH(F2) AS LEN_F2 FROM TT) A;如果是8i的话,就只能用 sbaz(万神渡劫) 提供的方法了:
select a.f1,a.f2
(select f1,f2,f2.length as fn
from tablename) a,(select f1,max(f2.length) as fn
from tablename group by f1) b
where a.fn=b.fn
and a.f1=b.f1