sql >> Database teknologi >  >> RDS >> PostgreSQL

Hvordan får man kun jsonb af specifikke nøgler fra postgres?

Du kan ganske let filtrere ned til en enkelt nøgle som sådan:

jsonb_object(ARRAY[key, jsonb_data -> key])

...eller du kan filtrere ned til flere nøgler:

(SELECT jsonb_object_agg(key, value) FROM jsonb_each(jsonb_data) WHERE key IN ('a', 'b'))

Eller på en mere kompleks tilstand, hvis du vil:

(
  SELECT jsonb_object_agg(key, value)
  FROM jsonb_each(jsonb_data)
  WHERE
    key NOT LIKE '__%'
    AND jsonb_typeof(value) != 'null'
)

Den slags spørgsmål kan besvares meget nemt ved blot at læse dokumentationen .



  1. Rust:Hvordan kører vi en DML på MySQL med mange parametre?

  2. Gengivelse af kinesiske/UTF8-tegn i MySQL Vælg ved hjælp af PuTTY &kommandolinjeklient

  3. Formater tal til 2 decimaler

  4. STOR USIGNET VÆRDI ER uden for rækkevidde Min SQL