News for hackers. Stuff that matters.
Re:Things to know about databases by tomnipotent on Tuesday June 28, 2022 @01:26AM (#31904412)
With just a splash of row_to_json and json_agg, you can JSON encode your entire query in PG.

  SELECT json_agg(row_to_json(t))
  FROM information_schema.tables as t;
Re:Things to know about databases by eurasiantiger on Tuesday June 28, 2022 @02:31PM (#31911267)
The dealbreaker here is having to do this dance for every nested field on every entity, and having to write a separate backend query for each separate front-end use-case for a single entity.

It just isn’t feasible to write everything out when the schema has >30 entities, some with N:M relations, and when queries routinely go several levels deep to fetch dozens of joined fields at every level. The boilerplate overhead is too much.

A natively GraphQL database makes such queries a magnitude less verbose to write out, and all the queries can stay in the frontend (or can become persisted queries on a GraphQL ”middle-end” server).

Re:Things to know about databases by tomnipotent on Wednesday June 29, 2022 @10:42AM (#31920829)
Hasura, a GraphQL server, uses exactly this technique to transform final query results into JSON in PG before bringing back into local memory.