type tipos float example datos data create sql postgresql plpgsql table-variable

tipos - PostgreSQL variable de tabla



tipos de datos postgresql 10 (2)

¿Hay algo como variables de tabla en T-SQL?
En Sql Server se ve así:

DECLARE @ProductTotals TABLE ( ProductID int, Revenue money )

Luego en el procedimiento puedo:

INSERT INTO @ProductTotals (ProductID, Revenue) SELECT ProductID, SUM(UnitPrice * Quantity) FROM [Order Details] GROUP BY ProductID

Y manipular con esta variable como una tabla ordinaria.

Aquí está la descripción: http://odetocode.com/Articles/365.aspx


Como comentó @Clodoaldo : use una tabla temporal en PostgreSQL. Para su ejemplo:

CREATE TEMP TABLE product_totals ( product_id int , revenue money );

Más información en el manual sobre CREATE TABLE donde puede encontrar esta cotización:

Si se especifica, la tabla se crea como una tabla temporal. Las tablas temporales se eliminan automáticamente al final de una sesión u, opcionalmente, al final de la transacción actual (consulte ON COMMIT a continuación). Las tablas permanentes existentes con el mismo nombre no son visibles para la sesión actual mientras que la tabla temporal existe, a menos que se haga referencia a ellas con nombres calificados por el esquema. Todos los índices creados en una tabla temporal también son automáticamente temporales.

Las tablas no registradas son una característica relacionada de PostgreSQL 9.1. Guardan las escrituras en el disco al no escribir en WAL . Aquí hay una discusión de las características de Robert Haas .

Aparte, con respecto al tipo de datos de money :


Usted puede arraigar de tipo compuesto en su lugar

CREATE TABLE xx(a int, b int); CREATE OR REPLACE FUNCTION bubu() RETURNS void AS $$ DECLARE _x xx[]; BEGIN _x := ARRAY(SELECT xx FROM xx); RAISE NOTICE ''_x=%'', _x; ...