Skip to content

Instantly share code, notes, and snippets.

@citrus
Created March 9, 2016 01:39
Show Gist options
  • Save citrus/1ca70a8e4153cae7cf07 to your computer and use it in GitHub Desktop.
Save citrus/1ca70a8e4153cae7cf07 to your computer and use it in GitHub Desktop.
SELECT *,
TO_TSVECTOR(holder_names) ||
TO_TSVECTOR(first_name) ||
TO_TSVECTOR(last_name) ||
TO_TSVECTOR(email) ||
TO_TSVECTOR(COALESCE(order_token, '')) AS attendee
FROM (
SELECT
users.id,
users.first_name,
users.last_name,
users.email,
orders.token AS order_token,
orders.order_type_code,
COUNT(tickets.id) AS ticket_count,
ARRAY_AGG(tickets.id) AS ticket_ids,
ARRAY_TO_STRING(ARRAY_AGG(ticket_types.name),',') AS ticket_types,
ARRAY_TO_STRING(ARRAY_AGG(CONCAT(tickets.holder_first_name, ' ', tickets.holder_last_name)),',') AS holder_names
FROM users
INNER JOIN tickets ON tickets.user_id = users.id AND tickets.deleted_at IS NULL
INNER JOIN ticket_types ON tickets.ticket_type_id = ticket_types.id
INNER JOIN orders ON tickets.order_id = orders.id
WHERE tickets.event_occurrence_id = 35687
GROUP BY users.id, orders.token, orders.order_type_code
) user_search
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment