ST_BandMetaData — 傳回特定光柵波段的基本中繼資料。若未指定波段編號,則預設為波段 1。
(1) record ST_BandMetaData(
raster rast, integer band=1)
;
(2) record ST_BandMetaData(
raster rast, integer[] band)
;
傳回關於光柵波段的基本中繼資料。傳回的欄位包括:pixeltype、nodatavalue、isoutdb、path、outdbbandnum、filesize、filetimestamp。
![]() |
|
如果光柵不包含任何波段,則會拋出錯誤。 |
![]() |
|
如果波段沒有 NODATA 值,則 nodatavalue 為 NULL。 |
![]() |
|
如果 isoutdb 為 False,則 path、outdbbandnum、filesize 和 filetimestamp 為 NULL。如果停用 outdb 存取,則 filesize 和 filetimestamp 也將為 NULL。 |
增強功能:2.5.0 版新增了針對 outdb 光柵的 outdbbandnum、filesize 和 filetimestamp。
SELECT rid, (foo.md).* FROM ( SELECT rid, ST_BandMetaData(rast, 1) AS md FROM dummy_rast WHERE rid=2 ) As foo; rid | pixeltype | nodatavalue | isoutdb | path | outdbbandnum -----+-----------+---- --------+---------+------+-------------- 2 | 8BUI | 0 | f | |
WITH foo AS ( SELECT ST_AddBand(NULL::raster, '/home/pele/devel/geo/postgis-git/raster/test/regress/loader/Projected.tif', NULL::int[]) AS rast ) SELECT * FROM ST_BandMetadata( (SELECT rast FROM foo), ARRAY[1,3,2]::int[] ); bandnum | pixeltype | nodatavalue | isoutdb | path | outdbbandnum | filesize | filetimestamp | ---------+-----------+-------------+---------+--------------------------------------------------------------------------------+---------------+----------+---------------+- 1 | 8BUI | | t | /home/pele/devel/geo/postgis-git/raster/test/regress/loader/Projected.tif | 1 | 12345 | 1521807257 | 3 | 8BUI | | t | /home/pele/devel/geo/postgis-git/raster/test/regress/loader/Projected.tif | 3 | 12345 | 1521807257 | 2 | 8BUI | | t | /home/pele/devel/geo/postgis-git/raster/test/regress/loader/Projected.tif | 2 | 12345 | 1521807257 |