Returns metadata stored on a raster object or one of its bands. The result is a text value: a single metadata value when you specify a key name, or a JSON object when you set key to 'all'.
Syntax
text ST_MetaData(raster raster_obj)
text ST_MetaData(raster raster_obj, text key)
text ST_MetaData(raster raster_obj, integer band, text key)The three overloads work as follows:
| Overload | What it returns |
|---|---|
ST_MetaData(raster_obj) | All raster-level metadata as a JSON object |
ST_MetaData(raster_obj, key) | A single raster-level metadata value, or all raster-level metadata as a JSON object when key is 'all' |
ST_MetaData(raster_obj, band, key) | A single band-level metadata value, or all band-level metadata as a JSON object when key is 'all' |
Parameters
| Parameter | Description |
|---|---|
raster_obj | The raster object. |
band | The band number, starting from 0. |
key | The name of the metadata item to retrieve. Set to 'all' to return all metadata items as a JSON object. |
Examples
Get all raster-level metadata
SELECT ST_MetaData(raster_obj)
FROM raster_table;Get a specific raster-level metadata value
SELECT ST_MetaData(raster_obj, 'swh#scale_factor')
FROM raster_table;Result:
st_metadata
-----------------------
0.0001488117874873806Get all raster-level metadata as JSON
SELECT ST_MetaData(raster_obj, 'all')
FROM raster_table;Result:
st_metadata
-----------------------
{"AREA_OR_POINT":"Area"}Get a specific band metadata value
SELECT ST_MetaData(raster_obj, 0, 'NETCDF_DIM_time')
FROM raster_table;Result:
st_metadata
-----------
1043112Get all band metadata as JSON
SELECT ST_MetaData(raster_obj, 0, 'all')
FROM raster_table;Result:
{
"add_offset": "4.907141431495487",
"long_name": "Significant height of combined wind waves and swell",
"missing_value": "-32767",
"NETCDF_DIM_time": "1043112",
"NETCDF_VARNAME": "swh",
"scale_factor": "0.0001488117874873806",
"units": "m",
"_FillValue": "-32767"
}