title: How to prevent GROUP_CONCAT from creating a result when no input data is present?
body: <p>Given the following MySQL query:</p>
  
  <pre><code>SELECT
    `show`.`id`
    , GROUP_CONCAT( `showClips`.`clipId` ORDER BY `position` ASC ) AS 'playlist'
  FROM
    `show`
    INNER JOIN
      `showClips`
        ON
          ( `show`.`id` = `showClips`.`showId` )
  ;
  </code></pre>
  
  <p>I want to retrieve a list of all "shows" from the database, including the ids of contained "clips".  </p>
  
  <p>This works fine, as long as there are entries in the <code>show</code> table. For this problem, let's assume all tables are completely empty.  </p>
  
  <p><code>GROUP_CONCAT</code> will return <code>NULL</code> and thus forcing a row into the result (which contains only <code>NULL</code> values).  </p>
  
  <p>My application will then think that one show/result exists. But that result will be invalid. This can of course be checked, but I feel like this could (and should) be prevented in the query already.</p>