sql查询语句 where 后面的条件 A表的一个字段=B表的一个字段(+) 后面这个(+)代表什么意思
sql查询语句where后面的条件A表的一个字段=B表的一个字段(+)后面这个(+)代表什么意思如果在ACCESS里面的话,那要怎样表达?...
sql查询语句 where 后面的条件 A表的一个字段=B表的一个字段(+) 后面这个(+)代表什么意思
如果在ACCESS里面的话,那要怎样表达? 展开
如果在ACCESS里面的话,那要怎样表达? 展开
3个回答
展开全部
简单给你说明一下:
A表:ID,NAME
B表:ID,NAME
select * from a
id,name
1,张三
2,李四
select * from b
id,name
1,张三
2,李四
3, 赵五
select a.*,b.* from a,b where a.id=b.id(+)
id,name id,name
1,张三 1,张三
2,李四 2,李四
select a.*,b.* from a,b where a.id(+)=b.id
id,name id,name
1,张三 1,张三
2,李四 2,李四
null,null 3, 赵五
A表:ID,NAME
B表:ID,NAME
select * from a
id,name
1,张三
2,李四
select * from b
id,name
1,张三
2,李四
3, 赵五
select a.*,b.* from a,b where a.id=b.id(+)
id,name id,name
1,张三 1,张三
2,李四 2,李四
select a.*,b.* from a,b where a.id(+)=b.id
id,name id,name
1,张三 1,张三
2,李四 2,李四
null,null 3, 赵五
展开全部
(+)在oracle中表示外连接
如
select a.*,b.* from a,b where a.id=b.id(+)
是左连接,
也可以写成
select a.*,b.* from a left join b on a.id=b.id
后面一种写法是sql标准,在access、sqlserver、oracle都能用
如select a.*,b.* from a,b where a.id(+)=b.id是右连接
也可以写成
select a.*,b.* from a right join b on a.id=b.id
如
select a.*,b.* from a,b where a.id=b.id(+)
是左连接,
也可以写成
select a.*,b.* from a left join b on a.id=b.id
后面一种写法是sql标准,在access、sqlserver、oracle都能用
如select a.*,b.* from a,b where a.id(+)=b.id是右连接
也可以写成
select a.*,b.* from a right join b on a.id=b.id
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个特定在oracle的情况下才用,是表示外连接,举个例子吧:
显示雇员的姓名、工资和所在部门名称及不属于任何部门的雇员
select ename 姓名,sal 工资,dname 部门名称 from emp,dept
where emp.deptno=dept.deptno(+)。
下面的就不说了吧 具体就是 join on
显示雇员的姓名、工资和所在部门名称及不属于任何部门的雇员
select ename 姓名,sal 工资,dname 部门名称 from emp,dept
where emp.deptno=dept.deptno(+)。
下面的就不说了吧 具体就是 join on
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询