Pular para o conteúdo

Elimina chaves especificadas de um objeto JSON e devolve o objeto modificado. Se uma chave especificada não existir no objeto, é ignorada.

json_object_delete(<json_object>, <key1> [, <key2>, ...])
Parâmetro Descrição
json_object Um objeto JSON (tipo VARIANT) do qual eliminar chaves.
key1, key2, … Um ou mais literais de cadeia que representam as chaves a eliminar do objeto.

Devolve um VARIANT que contém o objeto JSON modificado, sem as chaves especificadas.

Eliminar uma única chave:

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

Eliminar várias chaves:

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

Eliminar uma chave inexistente (a chave é ignorada):

SELECT json_object_delete('{"a":1,"b":2}'::VARIANT, 'x');
-- Result: {"a":1,"b":2}