专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Oracle Exception

SQL command not properly ended

发布时间:2010-05-20 14:01:29 文章来源:www.iduyao.cn 采编人员:星星草

select al.*
from afcs_agent al left join afcs_agent_group ar on al.empno=ar.empno
where 1=1

执行时候总是报 SQL command not properly ended ??

------解决方法--------------------------------------------------------
select al.*
from afcs_agent al,afcs_agent_group ar
where al.empno=ar.empno(+)

如上就可以了
ORACLE中左右连接使用(+)就可以了,放在等式左边左连接,等式右边右连接


PS-------------------------------------------------------
外部联接 "+ "的用法

  外部联接 "+ "按其在 "= "的左边或右边分左联接和右联接.若不带 "+ "运算符的表中的一个行不直接匹配于带 "+ "预算符的表中的任何行,则前者的行与后者中的一个空行相匹配并被返回.若二者均不带’+’,则二者中无法匹配的均被返回.利用外部联接 "+ ",可以替代效率十分低下的 not in 运算,大大提高运行速度.例如,下面这条命令执行起来很慢

select a.empno from emp a where a.empno not in

(select empno from emp1 where job=’SALE’);

  倘若利用外部联接,改写命令如下:

select a.empno from emp a ,emp1 b

where a.empno=b.empno(+)

and b.empno is null

and b.job=’SALE’;

  可以发现,运行速度明显提高.
 

    
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: