2015-03-31 192 views
0

下面的查询不会运行,因为我有连接图断开连接。据我了解,当你为一个表别名时,你必须先把它放在连接条件中,但是当我这样做时,我仍然得到相同的错误,有什么建议?连接图断开连接ORACLE

select 
date1.LABEL_YYYY_MM_DD as Some_Label1, 
A.Some_Field as Some_Label2, 
round(sum(D.Some_Field3)/count (*),0)as Some_Label3 
from Table_A A 
inner JOIN Table_B B ON (A.some_key = B.some_key) 
inner JOIN date_time date1 ON (A.START_DATE_TIME_KEY = date1.DATE_TIME_KEY) 
left outer join Table_C C on(C.some_GUID = A.some_ID) 
left outer join Table_D D on(D.a_ID = C.a_ID) 
where 
(1=1) 
and date1.LABEL_YYYY_MM_DD ='2015-03-30' 
and D.blah ='1' 
group by 
date1.LABEL_YYYY_MM_DD, 
A.Some_Field 
order by 
date1.LABEL_YYYY_MM_DD 
; 

根据我上面的评论,我应该改变第一内连接来B.some_key = A.some_key等等,但是我仍然得到断开...

+0

“连接图断开连接”。 。 。那是什么意思?你的'join'没有明显的问题。在'on'子句中没有关于什么别名首先出现的规则。 – 2015-03-31 15:25:28

+0

@GordonLinoff [链接](http://stackoverflow.com/questions/20242329/sql-developer-disconnected-from-the-rest-of-the-join-graph) – 2015-03-31 15:47:51

回答

2

根据Oracle文档(http://docs.oracle.com/javadb/10.8.3.0/ref/rrefsqlj18922.html)之间存在所需的空间ON和布尔表达式

+0

谢谢@Pavel我将重新阅读加入tongiht – 2015-03-31 16:01:20

+0

@AM_Hawk只是搜索'('和用'替换'(' – 2015-03-31 16:05:34

+0

错误,它不是。:)版本4.1.3.20 – takacsot 2017-09-06 12:02:05