Todos os produtos
Search
Central de documentação

ApsaraDB RDS:ST_SetValue

Última atualização: Sep 02, 2026

Define o valor do pixel de um objeto raster em uma localização específica, identificada por linha e coluna ou por uma forma geométrica.

Sintaxe

Sobrecarga 1: definição por linha e coluna

raster ST_SetValue(raster raster_obj,
                   integer row,
                   integer column,
                   double value,
                   integer band);

Sobrecarga 2: definição por geometria

raster ST_SetValue(raster raster_obj,
                   geometry geom,
                   double value,
                   integer band default 0,
                   boolean rebuild_pyd default true,
                   cstring setvalueOptions default '');

Parâmetros

Parâmetro

Tipo

Descrição

raster_obj

raster

Objeto raster a atualizar.

row

integer

Número da linha do pixel a atualizar.

column

integer

Número da coluna do pixel a atualizar.

value

double

Novo valor do pixel.

band

integer

Número da banda do pixel a atualizar.

geom

geometry

Geometria que define a região de atualização dos valores dos pixels.

rebuild_pyd

boolean

Indica se a pirâmide será reconstruída após a atualização dos valores dos pixels.

setvalueOptions

cstring

Opções adicionais para a operação de atualização, fornecidas como string JSON. Consulte a tabela a seguir para ver os campos compatíveis.

Campos de setvalueOptions

Campo

Tipo

Padrão

Descrição

window_clip

bool

false

Defina se a caixa delimitadora do objeto geométrico será usada como região de atualização. true utiliza o retângulo delimitador mínimo (MBR) do objeto geométrico. false utiliza o próprio objeto geométrico.

rast_coord

bool

false

Especifica se a geometria de entrada usa coordenadas de pixel. true indica o uso de coordenadas de pixel, em que a coordenada x corresponde ao número da coluna e a coordenada y ao número da linha, ambas iniciando em 0. false indica que não há uso de coordenadas de pixel.

Exemplos

Leia o valor do pixel na linha 0, coluna 2, banda 1:

SELECT ST_Value(rast, 0, 2, 1) FROM raster_table ORDER BY id;

Defina os valores dos pixels como 250.0 nas localizações definidas por uma geometria MULTIPOINT na banda 0, com reconstrução de pirâmide ativada:

UPDATE raster_table
SET rast = ST_SetValue(rast, ST_GeomFromText('MULTIPOINT(0 0, 2 2, 10 10)', 4326), 250.0, 0, true);

Atribua o valor 10.0 aos pixels ao longo de uma LINESTRING usando coordenadas de pixel (rast_coord: true), sem reconstruir a pirâmide:

UPDATE raster_table
SET rast = ST_SetValue(rast, ST_GeomFromText('LINESTRING(211 77, 233 100)', 4326), 10.0, 0, false, '{"rast_coord":true}');