Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE] Add json_set function to PPL #3214

Open
acarbonetto opened this issue Dec 19, 2024 · 0 comments
Open

[FEATURE] Add json_set function to PPL #3214

acarbonetto opened this issue Dec 19, 2024 · 0 comments
Labels
enhancement New feature or request

Comments

@acarbonetto
Copy link
Collaborator

Is your feature request related to a problem?

As part of the RFC to add JSON functions, the json_set function would be useful to set or update elements of an existing json_object.

What solution would you like?

### `JSON_SET`

**Description**

`json_set(doc, path, value [, path, value]...)` Updates existing or adds new json elements to a json document at the specified paths. Returns the updated document. 

**Arguments type:** JSON_OBJECT, STRING, STRING | JSON_OBJECT | JSON_ARRAY, ...

**Return type:** JSON_OBJECT

Example:

    os> source=people | eval updated = json_set('{"a":[{"b":1},{"b":2}]}', '$.a[*].b', 3) | head 1 | fields updated 
    fetched rows / total rows = 1/1
    +-------------------------+
    | updated                 |
    +-------------------------+
    | {"a":[{"b":3},{"b":3}]} |
    +-------------------------+

What alternatives have you considered?

N/A

Do you have any additional context?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants