Hola, necesito hacer un UPDATE sobre la tabla RECETAS_HIST, la cual contiene
un array en el que cada campo es compuesto.

ingredientes.recetas_hist = '{{"1", "1 kg"}, {"2", "2 vasos"}}');

Me dice que la subselect, solo pude devolver un campo. Hay alguna manera
para poder actualizar ingredientes.recetas_hist similar a esta. El caso es
que necesito crear un trigger para actualizar la tabla de históricos y me
casca en este campo.


CREATE TABLE RECETAS_HIST(
    cod_recetah     SERIAL,
    cod_receta      INTEGER,
    ingredientes    TEXT[][],
);

CREATE TABLE INGREDIENTES_RECETAS(
    cod_receta      INTEGER,
    cod_ingre       INTEGER,
    cantidad        VARCHAR(100),
);



UPDATE recetas_hist
   SET ingredientes = ARRAY ( SELECT cod_ingre, cantidad
                                FROM ingredientes_recetas
                               WHERE cod_receta = '1'
                            )
 WHERE cod_receta = '1';

Responder a