title: SQL - Retrieve top(X) records even when fewer than X exist
body: <p>In my application, there are several places where a random set of X items is displayed to the user. The UI calls for there to be exactly X items displayed. However, there is no guarantee there will be X items in the table. So, if there are not X items, I need to fill the results with random duplicates.</p>
  
  <p>I need to write a query that is essentially:</p>
  
  <pre><code>SELECT TOP(@count) *
  FROM Things
  ORDER BY NEWID()
  </code></pre>
  
  <p>I'd like to be able to ask SQL for X records and get exactly X records back every time. Is there an easy way to accomplish this in SQL?</p>
  
  <p>Thank you.</p>