JSONPATHSTRING
This section contains reference documentation for the JSONPATHSTRING function.
Extracts the String value from jsonField
based on 'jsonPath'
, use optional defaultValue
for null or parsing error. This function can only be used in an ingestion transformation function.
Signature
JSONPATHSTRING(jsonField, 'jsonPath', [defaultValue])
jsonField
An Identifier/Expression contains JSON documents.
'jsonPath'
Follows JsonPath Syntax to read values from JSON documents.
'jsonPath'
` is a literal. Pinot uses single quotes to distinguish them from identifiers.
Usage Examples
The usage examples are based on extracting fields from the following JSON document:
{
"data": {
"name": "Pete",
"age": 24,
"subjects": [
{
"name": "maths",
"homework_grades": [80, 85, 90, 95, 100],
"grade": "A",
"score": 90
},
{
"name": "english",
"homework_grades": [60, 65, 70, 85, 90],
"grade": "B",
"score": 70
}
]
}
}
JSONPATHSTRING(data, '$.age')
"24"
This function can be used in the table config to extract the age
property into the age
column, as described below:
{
"tableConfig":{
"ingestionConfig":{
"transformConfigs":[
{
"columnName":"age",
"transformFunction":"JSONPATHSTRING(data, '$.age')"
}
]
}
}
}
Last updated
Was this helpful?