SQL Project Planning

  • + 0 comments
    -- Oracle
    SELECT 
        a.start_date,
        MIN(b.end_date) AS end_date
    FROM 
        (SELECT start_date FROM projects 
         WHERE start_date NOT IN (SELECT end_date FROM projects)) a,
        (SELECT end_date FROM projects 
         WHERE end_date NOT IN (SELECT start_date FROM projects)) b
    WHERE 
        a.start_date < b.end_date
    GROUP BY 
        a.start_date
    ORDER BY 
        min(b.end_date) - a.start_date, a.start_date;