ST_CountAgg — 聚合。回傳一組網格圖層中指定頻帶的像素數量。如果沒有指定頻帶,則預設為頻帶 1。如果 exclude_nodata_value 設定為 true,則只會計算不等於 NODATA 值的像素。
bigint ST_CountAgg(
raster rast, integer nband, boolean exclude_nodata_value, double precision sample_percent)
;
bigint ST_CountAgg(
raster rast, integer nband, boolean exclude_nodata_value)
;
bigint ST_CountAgg(
raster rast, boolean exclude_nodata_value)
;
回傳一組網格圖層中指定頻帶的像素數量。如果沒有指定頻帶 nband
,則預設為 1。
如果 exclude_nodata_value
設定為 true,則只會計算值不等於網格圖層 NODATA
值的像素。將 exclude_nodata_value
設定為 false 以取得所有像素的計數。
預設情況下,會取樣所有像素。若要取得更快的響應,請將 sample_percent
設定為介於 0 (零) 和 1 (一) 之間的值。
可用性:2.2.0
WITH foo AS ( SELECT rast.rast FROM ( SELECT ST_SetValue( ST_SetValue( ST_SetValue( ST_AddBand( ST_MakeEmptyRaster(10, 10, 10, 10, 2, 2, 0, 0,0) , 1, '64BF', 0, 0 ) , 1, 1, 1, -10 ) , 1, 5, 4, 0 ) , 1, 5, 5, 3.14159 ) AS rast ) AS rast FULL JOIN ( SELECT generate_series(1, 10) AS id ) AS id ON 1 = 1 ) SELECT ST_CountAgg(rast, 1, TRUE) FROM foo; st_countagg ------------- 20 (1 row)