[{"data":1,"prerenderedAt":8},["ShallowReactive",2],{"highlighted-code:import":3},{"mapping:3":4,"mapping:4":5,"examples:0":6,"examples:1":7},"\u003Cpre class=\"shiki ravenkeep-one-dark-saturated\" style=\"background-color:#0d0d0d;color:#b4bcc9\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#7F848E;font-style:italic\">-- psql: \\copy (&#x3C;this query on one line>) TO 'contacts.csv' WITH (FORMAT csv, HEADER)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">SELECT\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> u.id \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">AS\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> \"userId\"\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">       u.email \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">AS\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> \"email\"\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">       u.name \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">AS\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> \"name\"\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">       to_char(u.created_at \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">AT\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\"> TIME\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\"> ZONE\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> 'UTC'\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">, \u003C\u002Fspan>\u003Cspan style=\"color:#94D864\">'YYYY-MM-DD\"T\"HH24:MI:SS.MS\"Z\"'\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">) \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">AS\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> \"signedUpAt\"\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">       o.id \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">AS\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> \"accountId\"\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">       o.name \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">AS\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> \"accountName\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">FROM\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> users u\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">LEFT JOIN\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> LATERAL (\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">  SELECT\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> org.id, org.name\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">  FROM\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> memberships m \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">JOIN\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> organizations org \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">ON\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> org.id \u003C\u002Fspan>\u003Cspan style=\"color:#36CEE2\">=\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> m.organization_id\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">  WHERE\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> m.user_id \u003C\u002Fspan>\u003Cspan style=\"color:#36CEE2\">=\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> u.id\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7F848E;font-style:italic\">  -- the organization the user last used, else the earliest membership\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">  ORDER BY\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> (m.organization_id \u003C\u002Fspan>\u003Cspan style=\"color:#36CEE2\">=\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> u.last_organization_id) \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">DESC\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">, m.created_at, org.id\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">  LIMIT\u003C\u002Fspan>\u003Cspan style=\"color:#F09947\"> 1\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">) o \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">ON\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> true\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">ORDER BY\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> u.created_at, u.id;\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\u003Cpre class=\"shiki ravenkeep-one-dark-saturated\" style=\"background-color:#0d0d0d;color:#b4bcc9\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">SELECT\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> payer.user_id \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">AS\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> \"userId\"\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">       i.total \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">AS\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> \"amount\"\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">, \u003C\u002Fspan>\u003Cspan style=\"color:#7F848E;font-style:italic\">-- the amount your live revenue() call sends\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#56B0FB\">       upper\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">(i.currency) \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">AS\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> \"currency\"\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#94D864\">       'payment'\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\"> AS\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> \"kind\"\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">       i.stripe_invoice_id \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">AS\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> \"reference\"\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">       to_char(i.paid_at \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">AT\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\"> TIME\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\"> ZONE\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> 'UTC'\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">, \u003C\u002Fspan>\u003Cspan style=\"color:#94D864\">'YYYY-MM-DD\"T\"HH24:MI:SS.MS\"Z\"'\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">) \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">AS\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> \"occurredAt\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">FROM\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> invoices i\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">JOIN\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> LATERAL (\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7F848E;font-style:italic\">  -- the organization's earliest owner pays\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">  SELECT\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> m.user_id \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">FROM\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> memberships m\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">  WHERE\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> m.organization_id \u003C\u002Fspan>\u003Cspan style=\"color:#36CEE2\">=\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> i.organization_id \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">AND\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> m.role \u003C\u002Fspan>\u003Cspan style=\"color:#36CEE2\">=\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> 'owner'\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">  ORDER BY\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> m.created_at, m.user_id\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">  LIMIT\u003C\u002Fspan>\u003Cspan style=\"color:#F09947\"> 1\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">) payer \u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">ON\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> true\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">WHERE\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> i.status \u003C\u002Fspan>\u003Cspan style=\"color:#36CEE2\">=\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\"> 'paid'\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\"> AND\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> i.total \u003C\u002Fspan>\u003Cspan style=\"color:#36CEE2\">>\u003C\u002Fspan>\u003Cspan style=\"color:#F09947\"> 0\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D163F3\">ORDER BY\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\"> i.paid_at, i.stripe_invoice_id;\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\u003Cpre class=\"shiki ravenkeep-one-dark-saturated\" style=\"background-color:#0d0d0d;color:#b4bcc9\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">userId,\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">email,\u003C\u002Fspan>\u003Cspan style=\"color:#56B0FB\">name,\u003C\u002Fspan>\u003Cspan style=\"color:#7F848E;font-style:italic\">signedUpAt,\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\">accountId,\u003C\u002Fspan>\u003Cspan style=\"color:#F25A67\">accountName,\u003C\u002Fspan>\u003Cspan style=\"color:#F09947\">utmSource,\u003C\u002Fspan>\u003Cspan style=\"color:#F7C569\">utmMedium,\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">utmCampaign\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">u_1001,\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">ana@example.com,\u003C\u002Fspan>\u003Cspan style=\"color:#56B0FB\">Ana Souza,\u003C\u002Fspan>\u003Cspan style=\"color:#7F848E;font-style:italic\">2024-11-02T14:05:31Z,\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\">org_77,\u003C\u002Fspan>\u003Cspan style=\"color:#F25A67\">Acme Ltda,\u003C\u002Fspan>\u003Cspan style=\"color:#F09947\">google,\u003C\u002Fspan>\u003Cspan style=\"color:#F7C569\">cpc,\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">brand\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">u_1002,\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">bruno@example.com,\u003C\u002Fspan>\u003Cspan style=\"color:#56B0FB\">\"Bruno, Jr.\",\u003C\u002Fspan>\u003Cspan style=\"color:#7F848E;font-style:italic\">2025-01-15T09:00:00Z,\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\">org_77,\u003C\u002Fspan>\u003Cspan style=\"color:#F25A67\">Acme Ltda,\u003C\u002Fspan>\u003Cspan style=\"color:#F09947\">,\u003C\u002Fspan>\u003Cspan style=\"color:#F7C569\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">u_1003,\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">,\u003C\u002Fspan>\u003Cspan style=\"color:#56B0FB\">Carla Dias,\u003C\u002Fspan>\u003Cspan style=\"color:#7F848E;font-style:italic\">2025-02-20T22:47:10.250Z,\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\">org_81,\u003C\u002Fspan>\u003Cspan style=\"color:#F25A67\">\"Studio \"\"Norte\"\"\",\u003C\u002Fspan>\u003Cspan style=\"color:#F09947\">newsletter,\u003C\u002Fspan>\u003Cspan style=\"color:#F7C569\">email,\u003C\u002Fspan>\u003Cspan style=\"color:#B4BCC9\">feb-launch\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\u003Cpre class=\"shiki ravenkeep-one-dark-saturated\" style=\"background-color:#0d0d0d;color:#b4bcc9\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">userId,\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">amount,\u003C\u002Fspan>\u003Cspan style=\"color:#56B0FB\">currency,\u003C\u002Fspan>\u003Cspan style=\"color:#7F848E;font-style:italic\">kind,\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\">reference,\u003C\u002Fspan>\u003Cspan style=\"color:#F25A67\">occurredAt\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">u_1001,\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">1999,\u003C\u002Fspan>\u003Cspan style=\"color:#56B0FB\">USD,\u003C\u002Fspan>\u003Cspan style=\"color:#7F848E;font-style:italic\">payment,\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\">in_1QaB2cD3eF4gH5iJ,\u003C\u002Fspan>\u003Cspan style=\"color:#F25A67\">2024-11-02T14:07:02Z\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">u_1001,\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">1999,\u003C\u002Fspan>\u003Cspan style=\"color:#56B0FB\">USD,\u003C\u002Fspan>\u003Cspan style=\"color:#7F848E;font-style:italic\">payment,\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\">in_1QkL6mN7oP8qR9sT,\u003C\u002Fspan>\u003Cspan style=\"color:#F25A67\">2024-12-02T14:07:11Z\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">u_1003,\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">4990,\u003C\u002Fspan>\u003Cspan style=\"color:#56B0FB\">USD,\u003C\u002Fspan>\u003Cspan style=\"color:#7F848E;font-style:italic\">payment,\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\">in_1QuV0wX1yZ2aB3cD,\u003C\u002Fspan>\u003Cspan style=\"color:#F25A67\">2025-02-20T22:50:00Z\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#B4BCC9\">u_1003,\u003C\u002Fspan>\u003Cspan style=\"color:#D163F3\">4990,\u003C\u002Fspan>\u003Cspan style=\"color:#56B0FB\">USD,\u003C\u002Fspan>\u003Cspan style=\"color:#7F848E;font-style:italic\">refund,\u003C\u002Fspan>\u003Cspan style=\"color:#94D864\">re_3QeF4gH5iJ6kL7mN,\u003C\u002Fspan>\u003Cspan style=\"color:#F25A67\">2025-02-27T10:12:45Z\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>",1793518581328]