ラスターオブジェクトまたは特定のバンドからメタデータを JSON文字列として返します。
この3つのオーバーロードは、段階的なパターンに従います。
`key`なし: すべてのメタデータ項目を JSONオブジェクトとして返します。
`key`あり: 単一のメタデータ項目の値を返します。すべての項目を JSONオブジェクトとして取得するには、
'all'を渡します。`band`と`key`あり: 上記と同様ですが、特定のバンドのメタデータに範囲が限定されます。
構文
text ST_MetaData(raster raster_obj);
text ST_MetaData(raster raster_obj,
text key);
text ST_MetaData(raster raster_obj,
integer band,
text key);パラメータ
| パラメータ | 型 | 説明 |
|---|---|---|
raster_obj | raster | ラスターオブジェクト。 |
band | integer | バンド番号。0から始まります。 |
key | text | 取得するメタデータ項目の名前。'all' を渡すと、すべてのメタデータ項目が JSONオブジェクトとして返されます。 |
戻り値
これら3つのオーバーロードはすべて text を返します。
| 呼び出しパターン | 戻り値 |
|---|---|
key 引数を指定しない場合 | すべてのメタデータ項目を JSON オブジェクトとして返す |
key を特定の名前に設定した場合 | 該当するメタデータ項目の値 |
key を 'all' | すべてのメタデータ項目を JSON オブジェクトとして返す |
band と key を特定の名前に設定した場合 | 指定されたバンド内の該当するメタデータ項目の値 |
band と key を 'all' | 指定されたバンド内のすべてのメタデータ項目を JSON オブジェクトとして返す |
例
すべてのオブジェクトレベルのメタデータの取得
SELECT ST_MetaData(raster_obj) FROM raster_table;特定のメタデータ項目を名前で取得
SELECT ST_MetaData(raster_obj, 'swh#scale_factor')
FROM raster_table;出力:
st_metadata
-----------------------
0.0001488117874873806key='all' を使用したすべてのオブジェクトレベルのメタデータの取得
SELECT ST_MetaData(raster_obj, 'all')
FROM raster_table;出力:
st_metadata
-----------------------
{"AREA_OR_POINT":"Area"}バンドから特定のメタデータ項目を取得
SELECT ST_MetaData(raster_obj, 0, 'NETCDF_DIM_time')
FROM raster_table;出力:
st_metadata
-------------
1043112key='all' を使用したバンドのすべてのメタデータの取得
SELECT ST_MetaData(raster_obj, 0, 'all')
FROM raster_table;出力:
{"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"}