title: Add a dummy row when the query returns at least one result
body: <p>I have seen a few SQL questions regarding "how to add a row when none exists" or "how to return a dummy row when no result is found", but I can't figure out a way to get the opposite result. My objective here is to add a row whenever there's at least one result found. However, when no result is found, nothing should be returned.</p>
  
  <p>Given the following <code>users</code> table:</p>
  
  <pre><code>ID     USERNAME
  ------------------
  1      bob
  2      alice
  </code></pre>
  
  <p>And a dummy row (which isn't stored in the DB) :</p>
  
  <pre><code>ID     USERNAME
  ------------------
  0      dummy
  </code></pre>
  
  <p>Here is the result I'm trying to get:</p>
  
  <pre><code># Query: find users with ID 1.
  
  ID     USERNAME
  ------------------
  1      bob
  0      dummy
  
  # Query: find users with ID 3.
  
  (empty set)
  
  # Query: find users with ID 0.
  
  (empty set)
  </code></pre>
  
  <p>Of course, the dummy row is to be added only once (and not once per actual record). For now, I am working with the following query...</p>
  
  <pre><code>SELECT * FROM (
      SELECT * FROM users WHERE id = 1
      UNION SELECT 0, 'dummy'
  )
  </code></pre>
  
  <p>Yet, this adds the dummy row in all cases, even when the first sub-<code>SELECT</code> returns an empty set. Is there any way I could add my row only when necessary?</p>
  
  <p><em>Note:</em> This is a MySQL database.</p>