select a,b from test
minus
select a,b from test t where exists(select 1 from test tt t.a||t.b=tt.a||tt.b);
minus
select a,b from test t where exists(select 1 from test tt t.a||t.b=tt.a||tt.b);
解决方案 »
- Oracle->SQL Server 2000如何追加数据?
- 求oracle学习方法(书籍,视频资料)以及以后职业方向
- 平时数据相关问题和系统操作性方面改善?
- 如何实现ADO连接两个不同版本的Oracle数据库
- 这个sql语句怎么写?
- oracle,如何查看视图结构,获得视图中的字段名称、字段类型、字段长度等。
- 一个select语句条件编写的问题。
- oracle哪个版本开始支持GB18030字符集啊?如何从ZHSGBK升级上来?
- Oracle 日期和数字查询问题
- 关于rman 非归档模式下备份,有试过的么,求大神指点
- 数据转换问题:LONG转换成BLOB,CLOB类型转换成BLOB?高手帮忙啊!
- 请教一SQL
上面的那个不正确。
SQL> select * from test; A B
---------- ----------
1 2
2 1
1 3
3 4
4 3
3 1已选择6行。已用时间: 00: 00: 00.50
SQL> select a,b from test
2 minus
3 select a,b from test t where a>b and
4 exists(select 1 from test tt where t.a||t.b=tt.b||tt.a); A B
---------- ----------
1 2
1 3
3 4已用时间: 00: 00: 00.20
SQL>
select distinct decode(sign(a-b),1,b,a) g1,decode(sign(a-b),1,a,b) g2 from test
SQL> select * from test;A B
-------------------- --------------------
aa bb
bb aa
cc dd
ee dd
dd cc已用时间: 00: 00: 00.30
SQL> select a,b from test
2 minus
3 select a,b from test t where a>b and
4 exists(select 1 from test tt where t.a||t.b=tt.b||tt.a);A B
-------------------- --------------------
aa bb
cc dd
ee dd已用时间: 00: 00: 00.40
SQL>
select distinct decode(sign(ASCII(a)-ASCII(b)),1,b,a) g1,decode(sign(ASCII(a)-ASCII(b)),1,a,b) g2 from test
忘了有least(), greatest()函数了:)