ORACLE-包含外连接的三表查询

select r.msg_id,s.content,r.file_id from msg_rcv r left join msg_send s left join upload_file f

on r.user_id = '210000000004843' and r.msg_id = s.msg_id and r.file_id = f.id

上面的SELECT语句,执行的时候报“ORA-00905:缺失关键字错误”,请问应该如何修改?

msg_rcv表中的一条记录,在rsg_send表中必然有一条与之相对应的记录
msg_send表与upload_file表中没有关联字段

我做了验证,的确当b和c无关联字段的时候会提示关键字错误,因此我将表a与表b的查询结果作为了一个表ab再与c进行关联,这样即可查出三个表的信息。

select ab.flname,ab.模板id,c.scheduler_name
from (select a.flname, a.obj_id 分类id, b.obj_id as 模板id, b.tjtj
from zbfb_flinfo a
left join zbfb_mbinfo b
on a.mb_obj_id = b.obj_id
where a.mb_obj_id = '41DEC382-13DD-4AD4-809B-0C7D170A8FED-93827') ab
left join zbfb_scheduler c
on ab.分类id = c.mb_obj_id;