title: How to use SQL to flatten a table with arrays in multiple columns?
body: <p>How do I transform this table with arrays in num and letter columns:</p>
  
  <pre><code> id  |    num    |  letter
  -----+-----------+-----------
   111 | [1, 2]    | [a, b]
   111 | [3, 4]    | [c, d]
   222 | [5, 6, 7] | [e, f, g]
  </code></pre>
  
  <p>into this table</p>
  
  <pre><code> id  | num | letter
  -----+-----+--------
   111 |   1 | a
   111 |   2 | b
   111 |   3 | c
   111 |   4 | d
   222 |   5 | e
   222 |   6 | f
   222 |   7 | g
  </code></pre>
  
  <p>Appendix:
  here is some sql to play around with to try to perform the transformation</p>
  
  <pre><code>with test as(
    select * from (
      values
          (111, array[1,2], array['a','b']),
          (111, array[3,4], array['c','d']),
          (222, array[5,6,7], array['e','f', 'g'])
    ) as t (id, num, letter)
  )
  select
   *
  from test
  </code></pre>