下面的查询不会运行,因为我有一个连接图断开连接。据我所知,当你对一个表进行别名时,你必须先把它放在连接条件中,但是当我这样做时,我仍然会得到同样的错误,有什么建议吗?
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 :(得分:2)
根据Oracle文档(http://docs.oracle.com/javadb/10.8.3.0/ref/rrefsqlj18922.html),ON
和布尔表达式之间需要空格