How to display queries of separate tables in adjacent columns?
You are basically building two tables, which then has to be joined on the date column.  In your query you miss the join condition.  

One clear way of solving this is building the two result sets as CTEs (WITH queries):

WITH pc AS (SELECT planning_day, sum(sot_contribution) AS minutes_planned 
            FROM planning_constraints 
            ...),
      p AS (SELECT planning_day, sum(sot_allowed) AS minutes_allowed
            FROM planning
            ...)
SELECT planning_day, 
       COALESCE(minutes_allowed, interval '0 minute') AS allowed, 
       COALESCE(minutes_planned, interval '0 minute') AS planned, 
       COALESCE(minutes_allowed, interval '0 minute') - 
           COALESCE(minutes_planned, interval '0 minute') AS diff
  FROM pc FULL OUTER JOIN p USING (planning_day)
 ORDER BY planning_day;


FULL OUTER JOIN means if there is a day specified in either one of the result sets, there will be a line for that day.  If this is not what you want, figure out which type of join you need.

Notes:


planning_day does not need to be COALESCEd, as the USING clause takes care of this
also, there is no need to use a GROUP BY in the outer query, as planning_day is already the key of both source tables
the ORDER BY can be now removed from both subqueries