sql >> データベース >  >> RDS >> Mysql

MySQL左結合とクロス結合クエリの問題

    これを試してください:

    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. postgresql / PL/pgSQLで関数を作成するときにタプルが同時に更新されます

    2. Oraclecurrent_timestampから秒への変換

    3. デスクトップアプリの認証

    4. 重複データの問題とその修正方法