sql >> Databáze >  >> RDS >> Mysql

MySQL Levé spojení s dotazem na křížové spojení

Zkuste toto:

select t4.AppointmentTimeID, t4.AppointmentDate,ifnull(t5.NumberOfApplicants,0)
from
    (select distinct t2.AppointmentTimeID, t1.AppointmentDate
  from tbl_appointmentschedule_details t2 join (select t.AppointmentDate from (
SELECT adddate('2015-10-16', @rownum := @rownum + 1) as 'AppointmentDate' FROM tbl_appointments
JOIN (SELECT @rownum := -1) r
LIMIT 31
) t 
where t.AppointmentDate between '2015-10-16' and '2015-10-18') t1)  t4
left join 
    (SELECT t2.AppointmentTimeID,t1.AppointmentDate,sum(t1.NumberOfApplicants) as 'NumberOfApplicants'
    FROM tbl_appointmentschedule_details t2
    LEFT JOIN tbl_appointments t1 on t2.AppointmentTimeID=t1.AppointmentTimeID
    WHERE t1.AppointmentStatus='Pending' AND t1.AvailableInMarket=0
    GROUP BY t2.AppointmentTimeID,t1.AppointmentDate) t5 
on t4.AppointmentDate=t5.AppointmentDate and t4.AppointmentTimeID=t5.AppointmentTimeID
having t4.AppointmentTimeID!=0
order by t4.AppointmentDate,t4.AppointmentTimeID;



  1. 9 hlavních užitečných dotazů na tiskárnu Oracle Apps

  2. MySQL vybere každý den poslední řádek seřazený podle data DESC

  3. SSIS Microsoft Connector for Oracle od Attunity pro VS2015 se nezobrazuje

  4. Upgradovat řádky pouze při upgradu aplikace