MySQL - How to select Multiple rows from Multiple tables -
i have question sql statement, reason script not working properly.. scenario; have 6 tables
patient -patientid -patientname -employerid fk employer.employerid. employer -employerid -employername carrier -carrierid -carriername appointment -appointmentid -aptdatetime -patientid fk patient.patientid insuranceplan -planid -groupname -employerid fk employer.employerid -carrierid fk carrier.carrierid inssub -insubid -dateeffective -planid fk insplan.planid -suscriber fk patient.patientid
my script: need rows 5 tables,, not sql indexes validation, that's why script not working !
select p.patientname, e.employername, c.carriername, ip.groupname, a.aptdatetime, i.dateeffective patient p, employer e, inssub i, insuranceplan ip, carrier c, appointment e.employernum = p.employernum , i.subscriber = p.patientid , i.planid = ip.planid , ip.carrierid = c.carrierid , ip.employerid = e.employerid , ip.planid = i.planid , a.patientid = p.patientid , a.datetstamp > '2013/01/01' , a.aptdatetime != '0001-01-01 00:00:00'
it simpler if use explicit joins rather comma-delimited tables:
select p.patientname, e.employername, c.carriername, ip.groupname, a.aptdatetime, i.dateeffective patient p join employer e on p.employerid = e.employerid join insuranceplan ip on e.employerid = ip.employerid join carrier c on ip.carrierid = c.carrierid join appointment on p.patientid = a.patientid join inssub on p.patientid = i.subscriber , ip.planid = i.planid a.datetstamp > '2013/01/01' , a.aptdatetime != '0001-01-01 00:00:00'
Comments
Post a Comment