CNOUG 里比较有意思的一个SQL
2008-12-23 13:09
411 查看
请教 搞了一天没弄出来 数据的筛选
一个表 :-----------------------
列1 列2 列3
-----------------------
b c 20
-----------------------
c b 20
-----------------------
f h 9
-----------------------
h f 9
-----------------------
想要得到的结果:
-----------------------
列1 列2 列3
-----------------------
b c 20
-----------------------
f h 9-----------------------
c b ,h f 作为重复数据去除。如何写 sql 语句?高手帮忙。
解决如下:
上次看到这个贴,想法跟6楼一样,呵呵,今看了9楼的,才知道有bug
重写了个,应该没问题,各位高手指教(c1,c2是多个字符时该方法也适用)
SQL> select * from tmp_a;
C1 C2 C3
---------- ---------- -----------
b c 20
c b 20
f h 9
h f 9
a 10
a 10
6 rows selected
SQL> select c1, c2, c3
2 from (select row_number() over(partition by(case
3 when c1 >= c2 then
4 c1 || c2
5 else
6 c2 || c1
7 end), c3 order by c3) rn,
8 c1,
9 c2,
10 c3
11 from tmp_a)
12 where rn = 1;
C1 C2 C3
---------- ---------- -----------
a 10
b c 20
f h 9
[ 本帖最后由 tdx_rong 于 2008-12-22 11:02 编辑 ]
原文地址
http://www.oracle.com.cn/viewthread.php?tid=139067&extra=page%3D1
相关文章推荐
- 第一个文章,今天比较兴奋啊! 给大家一个关于SQL复合查询的文章(动态生成多个where条件)
- 一个SQL存储过程面试题(比较简单)
- SQL 比较一个集合是否在另一个集合里存在的方法分享
- 记下一条使用SQLServer 2000 T-SQL中日期函数比较多的一个SQL语句
- 比较有意思的Sql语句
- 在论坛中出现的比较难的sql问题:10(删除多表中的同一个外键)
- 一个比较有意思的C语言问题
- 30天了解30种技术系列---(20)React .js 一个比较有意思的前端框架
- C#入门的比较有意思的一个欢迎控制台程序!
- 看到一个比较有意思的题目,记下来
- 一个比较有意思的项目,和微信有关的
- 清结算内部勾兑业务一个比较有意思的问题整理
- 一个比较有意思的控制台下的俄罗斯方块代码
- (转)以一个例子展示SQL语句的用法(比较全)
- (SQL)比较一个集合是否在另一个集合里存在的方法
- 一个比较有意思的算法题,猴子选大王
- 一个比较复杂的sql
- 一个有意思的sql
- 转载一个比较有意思的程序函数,呵! result love(boy, girl)
- 一个效率比较高的分页存储过程(SQL)