Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » PostgreSQL »

funciones en postgres

Estas en el tema de funciones en postgres en el foro de PostgreSQL en Foros del Web. hola buenos dias, soy nuevo en postgres, y me gustaria hacer una funcion el cual me busque un producto y segun el tipo de producto ...
  #1 (permalink)  
Antiguo 31/10/2010, 08:08
 
Fecha de Ingreso: noviembre-2008
Mensajes: 88
Antigüedad: 15 años, 5 meses
Puntos: 0
funciones en postgres

hola buenos dias, soy nuevo en postgres, y me gustaria hacer una funcion el cual me busque un producto y segun el tipo de producto me mande cuantas existencias tiene ya que los tipos de productos son diferentes y se tratan diferentes estan divididos en diferentes tablas. espero puedan ayudarme o si se puede hacer ya que quiero que regrese lo que es por ejemplo la existencias, descripcion, precio de compra , precio de vent, status etc.
  #2 (permalink)  
Antiguo 02/11/2010, 07:31
Avatar de death_nemesis  
Fecha de Ingreso: abril-2009
Ubicación: Santiago - Chile
Mensajes: 147
Antigüedad: 15 años
Puntos: 2
Respuesta: funciones en postgres

Mira aqui tienes un ejemplo simple de como se crea una funcion en postgres

Código SQL:
Ver original
  1. CREATE OR REPLACE FUNCTION tablasMultiplicar(x INTEGER ,y INTEGER, OUT Multiplicando INTEGER,OUT Multiplicador INTEGER,OUT ProductoTotal INTEGER) RETURNS SETOF RECORD AS $_$
  2. DECLARE
  3.     i       INTEGER;
  4.     j       INTEGER;
  5.     total   INTEGER;
  6.     matriz  INTEGER[][];
  7.     use_sql TEXT;
  8. BEGIN
  9.     FOR i IN 1..x LOOP
  10.         FOR j IN 1..y LOOP
  11.             matriz[i]= i;
  12.             matriz[j]= j;
  13.             total:= matriz[i] * matriz[j];
  14.             use_sql:='select '||matriz[i]||'as Multiplicando,'||matriz[j]||'as Multiplicador, '||total||'as ProductoTotal';
  15.         END LOOP;
  16.     END LOOP;
  17.     RETURN QUERY EXECUTE use_sql;
  18. END
  19. $_$
  20. LANGUAGE plpgsql;
  21. SELECT * FROM tablasMultiplicar(6,3);

Etiquetas: funciones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:40.