Oracle数据库中多表关联同一个字段

本文是关于在Oracle数据库中,实现多个表用同一个字段进行关联的方法。
具体如下所示:


实现过程

以left…join…on…方式联接

一般是如果3张表A,B,C,以A表为基础。则是
select *  
from a left join b on a.id=b.id
       left join c on a.id=c.id 

实现方法

select trunc(v.discharge_date_time) as 出院时间,m.patient_id as 住院号,m.name as 姓名,m.phone_number_home as 家庭电话号码,m.phone_number_business as 单位电话号码,
       m.mailing_address as 住址,d.diagnosis_desc as 诊断,'' as 用药情况,'' as 饮食运动,'' as 医生建议,'' as 患者意见 
from pat_master_index m left join pat_visit v on m.patient_id = v.patient_id left join diagnosis d on m.patient_id = d.patient_id --用多表关联同一字段
where d.diagnosis_type = '1' and v.visit_id = '1' and v.discharge_date_time is not null
      and v.discharge_date_time between v_param_date.get_start_date and v_param_date.get_end_date
      --v.discharge_date_time between to_date('2018-04-25', 'yyyy-mm-dd') and to_date('2018-06-25', 'yyyy-mm-dd')      
order by v.discharge_date_time,m.patient_id

参考文章:
3张表以上,关联查询

猜你喜欢

转载自blog.csdn.net/phoenixmajie/article/details/82148318