Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

206
Views
Postgres JSONB function to key an array of objects, by a field

Is there a pure Postgres approach to turning a JSONB array like:

[{"id": 1, "name": "Dom" }, { "id": 2, "name": "Bass" }]

into

{ 1: {"id": 1, "name": "Dom" }, 2: { "id": 2, "name": "Bass" } }

I.e. same as Lodash doing:

_.keyBy(arr, 'id)

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Use the function:

create or replace function jsonb_key_by(jsonb, text)
returns jsonb language sql immutable as $$
    select jsonb_object_agg(elem->>$2, elem)
    from jsonb_array_elements($1) as arr(elem)
$$;

Test it in db<>fiddle.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!