select a.id ,b.id from table a,table b
where a.id(+)=b.id --这是左外连接
如果是a.id=b.id(+)--这是右外连接
当使用左外连接时如果a.id没有相应的值和b.id对应则以null值代替如:
a.id b.id
1 1
null 2
3 3
右外连接同理,如下:
a.id b.id
1 1
2 2
3 null其实你只要记着将(+)放在数据相对比较少的一边就行了
where a.id(+)=b.id --这是左外连接
如果是a.id=b.id(+)--这是右外连接
当使用左外连接时如果a.id没有相应的值和b.id对应则以null值代替如:
a.id b.id
1 1
null 2
3 3
右外连接同理,如下:
a.id b.id
1 1
2 2
3 null其实你只要记着将(+)放在数据相对比较少的一边就行了
解决方案 »
- 。。。数据库问题 哪位大神指教下
- 想求同类别的本条记录的in_date_time-上条记录的out_date_time
- 老问题:Oracle行转列(字符串拆分)
- System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本?
- oracle数据容量是多少
- oracle为何总是断开连接?
- 谁能告诉我在新建的数据库里在哪建我的表啊?
- 求sql,两张表关联,如果关联的字段一张表中有,另一张中没有,如何把这些也查询出来
- 想知道:Oracle中的包、存储过程、函数等信息存储在系统的那个表中?谢。
- 新手,请多帮忙
- 请问:忘记OEM的SYSMAN的密码该如何解决.
- oracle里用什么工具可以导入SQL SERVER的数据库?
select 1+1 from dual
输出
2
select 1+1 from dual
输出
2
我试过,但是报错 line:1
ORA-01747: 无效的用户.表.列,表.列,或列规格
continue?
select a.id,b.id from table a,(select trim(id) id from table) b where trim(a.id)=b.id (+)
用我上面的方法应该可以的