Выборка ST_PixelData из столбца ST_Raster в столбец ST_PixelData

Для извлечения значения ST_PixelData из значения ST_Raster может использоваться функция ST_Raster getPixelData. Это значение может быть вставлено в ST_Pixeldata или оно может быть перенесено в переменную ST_PixelData.

Шаги:
  1. Используйте выражение SELECT для извлечения значения ST_PixelData из значения ST_Raster.

    Если вы разместите выражение SELECT внутри выражения INSERT, то результат извлеченного ST_PixelData будет вставлен в указанный столбец.

    В следующих примерах значение первого уровня ST_PixelData выбрано из столбца ST_Raster таблицы urban_area и вставлено в столбец ST_PixelData таблицы пикселей.

    Oracle

    INSERT INTO PIXELS (pdata)
    SELECT t.raster.getPixelData('level=1')
    FROM URBAN_AREA t
    WHERE t.raster.raster_id = 1;
    

    PostgreSQL

    INSERT INTO pixels (pdata)
    SELECT getPixelData(raster,'level=1')
    FROM urban_area
    WHERE raster_id(raster) = 1;
    

    SQL Server

    INSERT INTO pixels (pdata)
    SELECT raster.getPixelData('level=1')
    FROM urban_area
    WHERE raster.raster_id = 1;
    

    В этих примерах ST_PixelData выбрано из столбца ST_Raster таблицы urban_area и перенесено в переменную ST_PixelData методом ST_Raster getPixelData.

    Oracle

    DECLARE
    p sde.st_pixeldata;
    BEGIN
     SELECT t.raster.getPixelData() INTO p
     FROM URBAN_AREA t
     WHERE t.raster.rasterid = 1;
    END;
    /
    

    PostgreSQL

    DROP FUNCTION IF EXISTS fetch_pixeldata();
    
    CREATE OR REPLACE FUNCTION fetch_pixeldata()
    RETURNS integer AS '
    
    DECLARE p st_pixeldata;
    BEGIN
     SELECT getPixelData(raster) INTO p
     FROM urban_area
     WHERE raster_id(raster) = 1;
    END;'
    LANGUAGE plpgsql;
     
    SELECT edit_pixeldata();
    DROP FUNCTION IF EXISTS fetch_pixeldata();
    

    SQL Server

    DECLARE @p ST_PIXELDATA;
    SET @p = (SELECT raster.getPixelData(NULL)
              FROM urban_area
              WHERE raster.raster_id = 1);
    

Связанные темы

5/25/2014