Guest User

Untitled

a guest
Nov 20th, 2017
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.59 KB | None | 0 0
  1. CREATE TYPE something AS (c1 INT, c2 TEXT, discriminator TEXT);
  2.  
  3. WITH my_table AS (SELECT * FROM (VALUES (1), (2), (3)) t(value))
  4. SELECT (unnesting.data).* FROM (
  5. SELECT unnest(q.v) AS data
  6. FROM (
  7. SELECT (CASE WHEN my_table.value = 1
  8. THEN (SELECT array_agg(q0.* :: something) FROM (SELECT 111, NULL, 'Int') q0)
  9. ELSE (SELECT array_agg(q1.* :: something) FROM (SELECT NULL, 'myString', 'String') q1)
  10. END) AS v
  11. FROM my_table) q
  12. ) unnesting
  13.  
  14. ... ROWS FROM (...) AS (INT, TEXT, TEXT)
Add Comment
Please, Sign In to add comment