Resuelto

for x in 1..cardinality($1) loop

insert into detalle(codiarti, cantidad, precio) values ($1[x],$2[x],$3[x]);
end loop;


Gracias  Daymel Bonne

2018-01-29 16:52 GMT-04:00 Daymel Bonne <daymel.bo...@2ndquadrant.ec>:

> Hola:
>
> Puedes ver en la documentación oficial en este enlace:
> https://www.postgresql.org/docs/current/static/functions-array.html
>
> En concreto es la función array_length.
>
> Saludos
>
>
> El 29 ene. 2018 3:34 p.m., "Ovidio Jimenez" <ovima...@gmail.com> escribió:
>
> Saludos a todos.
>
>
> Como puedo saber cuantos elementos tengo en el array para que sea el
> limite de la sentencia FOR.
>
> /**
>
>              for x in 1..10 loop
>
>     Ejemplo  for x in 1..*N* loop
>
> **/
>
>
> CREATE OR REPLACE FUNCTION insertar_detalle(    *_articulo *integer[],
> _cantidad numeric[],    _precio numeric[])
>   RETURNS void AS
> $BODY$ declare x integer;
> begin
>
> *for x in 1..10 loop*
>
> insert into detalle(codiarti, cantidad, precio) values ($1[x],$2[x],$3[x]);
> end loop;
> end;
> $BODY$ LANGUAGE plpgsql;
>
>
>
> Gracias!
>
> PostgreSQL 9.4.5, compiled by Visual C++ build 1800, 64-bit
> Microsoft Windows [Version 10.0.10240] 64-bit
>
>
>
>
>
> --
> Ing. Ovidio Jiménez
> Cel.: 809-390-4299 <(809)%20390-4299>
>
>
>


-- 
Ing. Ovidio Jiménez
Cel.: 809-390-4299

Reply via email to