These I knew.
If you do a straight query, the normal result is a recordset, which will have rows if the conditions are met, and nothing if the conditions are not met.
If you try to perform just an aggregate function like MAX() or MIN() for a condition that can't be met, the result set will be a null value.
If you try to perform just an aggregate function like COUNT() OR SUM() for a condition that can't be met, the result set will be zero.
Well, I did that, and I saw that the query returned "NULL" when there were no Comments, but my fear was how to handle things if things "blow up".
The easiest way to understand how the query to behave is to test it in the database (phpmyadmin, sql server management studio, etc.). Try the query where the conditions are met, and when they're not, and see how the resultsets are returned.