oracle数据库一个SQL语句怎么写??

Mark_zheng 2001-10-17 08:11:02
有两个表table1 table2结构完全一样,如何从 table2中把与 TABLE1 中不同的数据选择出来???
...全文
127 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
KingSunSha 2001-10-19
  • 打赏
  • 举报
回复
如果单纯从语法角度讲,有4种写法:
1、minus:两个纪录集相减
2、not exists
3、not in
4、外连接,就象wwl007(疑难杂症)说的。

这四种写法的性能不完全相同,哪一种最优没有定论,取决于你的两个表中的纪录数和索引情况。你可以都试一下,比一比执行速度,然后选择一种。
Mark_zheng 2001-10-18
  • 打赏
  • 举报
回复
ok
mashansj 2001-10-17
  • 打赏
  • 举报
回复
agree all
szsusuia 2001-10-17
  • 打赏
  • 举报
回复
外连接。
Mark_zheng 2001-10-17
  • 打赏
  • 举报
回复
select b.* from table1 a,table2 b where b.key=a.key(+) and a.key is null;

a.key(+)是什么意思???谢谢。。。
wwl007 2001-10-17
  • 打赏
  • 举报
回复
那个速度有些慢,我自己感觉阿?
szsusuia 2001-10-17
  • 打赏
  • 举报
回复
minus是运算符:从一个查询的结果中减去另一个的。
wwl007 2001-10-17
  • 打赏
  • 举报
回复
select b.* from table1 a,table2 b where b.key=a.key(+) and a.key is null;
Mark_zheng 2001-10-17
  • 打赏
  • 举报
回复
minus 是个函数吗??? 它有什么用处,谢谢!
szsusuia 2001-10-17
  • 打赏
  • 举报
回复
select * from table2
minus
select * from table1 选出的是table2中有,table1中没有的。

2,596

社区成员

发帖
与我相关
我的任务
社区描述
Sybase相关技术讨论区
社区管理员
  • Sybase社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧