栅格波段访问函数¶
ST_BandMetaData¶
ST_BandMetaData — 返回特定栅格波段的基本元数据。如果未指定,则假定波段编号为1。
返回值¶
返回有关栅格标注栏的基本元数据。
示例¶
SELECT rid, (foo.md).* FROM (SELECT rid, ST_BandMetaData(rast, 1) AS md FROM dummy_rast) As foo;
RID(int) |PIXELTYPE(text) |NODATAVALUE(double precision) |ISOUTDB(boolean) |PATH(text) |OUTDBBANDNUM(int) |FILESIZE(bigint) |FILETIMESTAMP(bigint) |
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1 |null |null |null |null |null |null |null |
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2 |8BUI |null |false |null |null |null |null |
总数目:2
ST_BandNoDataValue¶
ST_BandNoDataValue — 返回给定区段中表示无数据的值。如果没有频带数,则假定为1。
返回值¶
返回表示波段无数据的值
示例¶
SELECT ST_BandNoDataValue(rast,1) As bnval1, ST_BandNoDataValue(rast,2) As bnval2, ST_BandNoDataValue(rast,3) As bnval3 FROM dummy_rast;
BNVAL1(double precision) |BNVAL2(double precision) |BNVAL3(double precision) |
------------------------------------------------------------------------------------------
null |null |null |
------------------------------------------------------------------------------------------
null |null |null |
总数目:2
ST_BandIsNoData¶
ST_BandIsNoData — 如果带区仅填充无数据值,则返回TRUE。
返回值¶
如果带区仅填充无数据值,则返回TRUE。如果未指定,则假定为带1。如果最后一个参数为真,则逐个像素检查整个波段。否则,该函数只返回频带的isnodata标志的值。如果未指定,则此参数的默认值为FALSE。
示例¶
select st_bandisnodata(rast, 1) from dummy_rast;
ST_BANDISNODATA(boolean) |
------------------------------
null |
------------------------------
false |
总数目:2
ST_BandPath¶
ST_BandPath — 返回存储在文件系统中的带的系统文件路径。如果未指定带宽,则假定为1。
返回值¶
将系统文件路径返回到区段。如果使用数据库内频段调用,则引发错误。
示例¶
SELECT 'bandpath1', right(ST_BandPath(ST_MakeEmptyRaster(10, 10, 0, 0, 1, -1, 0, 0, 0)), 14);
?COLUMN?(varchar) |RIGHT(text) |
----------------------------------------
bandpath1 |null |
总数目:1
ST_BandFileSize¶
ST_BandFileSize — 返回存储在文件系统中的带的文件大小。如果未指定带宽,则假定为1。
返回值¶
返回存储在文件系统中的区段的文件大小。如果使用数据库内频段调用,或如果未启用outdb访问,则引发错误。
此函数通常与ST_BandPath()和ST_BandFileTimestamp()结合使用,因此客户端可以确定它看到的outdb栅格的文件名是否与服务器看到的相同。
示例¶
SELECT ST_BandFileSize(rast,1) FROM dummy_rast WHERE rid = 1;
ST_BANDFILESIZE(bigint) |
-----------------------------
null |
总数目:1
ST_BandFileTimestamp¶
ST_BandFileTimestamp — 返回存储在文件系统中的带的文件时间戳。如果未指定带宽,则假定为1。
返回值¶
返回文件系统中存储的区段的文件时间戳(自1970年1月1日00:00:00 UTC以来的秒数)。如果使用数据库内频段调用,或如果未启用outdb访问,则引发错误。
此函数通常与ST_BandPath()和ST_BandFileSize()结合使用,因此客户端可以确定它看到的outdb栅格的文件名是否与服务器看到的相同。
示例¶
SELECT ST_BandFileTimestamp(rast,1) FROM dummy_rast WHERE rid = 1;
ST_BANDFILETIMESTAMP(bigint) |
----------------------------------
null |
总数目:1
ST_BandPixelType¶
ST_BandPixelType — 返回给定波段的像素类型。如果未指定带宽,则假定为1。
返回值¶
返回描述存储在给定波段的每个单元格中的值的数据类型和大小的名称。
有11种像素类型。支持的像素类型如下:
1BB-1位布尔值
2BUI-2位无符号整数
4BUI-4位无符号整数
8BSI-8位带符号整数
8BUI-8位无符号整数
16BSI-16位带符号整数
16BUI-16位无符号整数
32BSI-32位带符号整数
32BUI-32位无符号整数
32BF-32位浮点
64BF-64位浮点
示例¶
SELECT ST_BandPixelType(rast,1) As btype1, ST_BandPixelType(rast,2) As btype2, ST_BandPixelType(rast,3) As btype3 FROM dummy_rast WHERE rid = 2;
BTYPE1(text) |BTYPE2(text) |BTYPE3(text) |
------------------------------------------------------
8BUI |8BUI |8BUI |
总数目:1
ST_MinPossibleValue¶
ST_MinPossibleValue — 返回此像素类型可以存储的最小值。
返回值¶
返回此像素类型可以存储的最小值。
示例¶
SELECT ST_MinPossibleValue('16BSI');
ST_MINPOSSIBLEVALUE(double precision) |
-------------------------------------------
-32768 |
总数目:1
SELECT ST_MinPossibleValue('8BUI');
ST_MINPOSSIBLEVALUE(double precision) |
-------------------------------------------
0 |
总数目:1
ST_HasNoBand¶
ST_HasNoBand — 如果不存在具有给定波段编号的波段,则返回TRUE。如果未指定波段编号,则假定波段编号为1。
返回值¶
如果不存在具有给定波段编号的波段,则返回TRUE。如果未指定波段编号,则假定波段编号为1。
示例¶
SELECT rid, ST_HasNoBand(rast) As hb1, ST_HasNoBand(rast,2) as hb2,
ST_HasNoBand(rast,4) as hb4, ST_NumBands(rast) As numbands
FROM dummy_rast order by rid;
RID(int) |HB1(boolean) |HB2(boolean) |HB4(boolean) |NUMBANDS(int) |
---------------------------------------------------------------------------------------
1 |true |true |true |0 |
---------------------------------------------------------------------------------------
2 |false |false |true |3 |
总数目:2