title: PostgreSQL unnest with empty array
body: <p>I use postgreSQL 9.1. In my database there is a table which looks like</p>
  
  <pre><code>id | ... | values
  -----------------------
  1  | ... | {1,2,3}
  2  | ... | {}
  </code></pre>
  
  <p>where id is an integer and values is an integer array. The arrays can be empty.</p>
  
  <p>I need to unnest this list. If I query </p>
  
  <pre><code>select id, ..., unnest(values)
  from table
  </code></pre>
  
  <p>I get three rows for id = 1 (as expected) and no lines for id = 2. Is there a way to get a result like</p>
  
  <pre><code>id  | ... | unnest
  -------------------
  1   | ... | 1
  1   | ... | 2
  1   | ... | 3
  2   | ... | null
  </code></pre>
  
  <p>i.e. a query which also contains the lines which have an empty array?</p>