# JSON functions Source: https://www.hotdata.dev/docs/sql-functions-json Site index: https://www.hotdata.dev/llms.txt Query JSON held in text columns. A path is one or more segments—string object keys or integer array indices. The `->` / `->>` / `?` operators are shorthands (`json_get` / `json_as_text` / `json_contains`); casting a `->` result, e.g. `(data -> 'age')::int`, rewrites to the typed getter. ### json_as_text Value at a path, rendered as text. Operator: `json ->> key`. ``` json_as_text(json, path...) ``` ### json_contains Whether a value exists at the given path (boolean). Operator: `json ? key`. ``` json_contains(json, path...) ``` ### json_get JSON value at a path. ``` json_get(json, path...) ``` ### json_get_array Value at a path as an array. ``` json_get_array(json, path...) ``` ### json_get_bool Value at a path as a boolean. ``` json_get_bool(json, path...) ``` ### json_get_float Value at a path as a float. ``` json_get_float(json, path...) ``` ### json_get_int Value at a path as an integer. ``` json_get_int(json, path...) ``` ### json_get_json Nested raw JSON string at a path. ``` json_get_json(json, path...) ``` ### json_get_str Value at a path as a string. ``` json_get_str(json, path...) ``` ### json_length Length of the array or object at a path. Alias: `json_len`. ``` json_length(json, path...) ``` ### json_object_keys Keys of the object at a path, as an array. Alias: `json_keys`. ``` json_object_keys(json, path...) ```