Przejdź do głównej zawartości

Tworzy nowy obiekt JSON zawierający wyłącznie wskazane klucze z wejściowego obiektu JSON. Jeśli wskazany klucz nie istnieje w obiekcie wejściowym, jest pomijany w wyniku.

json_object_pick(<json_object>, <key1> [, <key2>, ...])
Parametr Opis
json_object Obiekt JSON (typ VARIANT), z którego wybierane są klucze.
key1, key2, … Jeden lub więcej literałów tekstowych reprezentujących klucze, które mają się znaleźć w obiekcie wynikowym.

Zwraca VARIANT zawierający nowy obiekt JSON tylko ze wskazanymi kluczami i odpowiadającymi im wartościami.

Wybranie pojedynczego klucza:

SELECT json_object_pick('{"a":1,"b":2,"c":3}'::VARIANT, 'a');
-- Result: {"a":1}

Wybranie wielu kluczy:

SELECT json_object_pick('{"a":1,"b":2,"d":4}'::VARIANT, 'a', 'b');
-- Result: {"a":1,"b":2}

Wybranie z nieistniejącym kluczem (nieistniejące klucze są ignorowane):

SELECT json_object_pick('{"a":1,"b":2,"d":4}'::VARIANT, 'a', 'c');
-- Result: {"a":1}