Oracle - funciones

 
Vista:
Imágen de perfil de ayuda-para convertir esto en una función pl sql

funciones

Publicado por ayuda-para convertir esto en una función pl sql (1 intervención) el 14/12/2020 19:43:55
1
2
3
4
5
6
7
select producto.nombre_producto, count(producto.cod_producto) as productos  from producto
  inner join detalle_producto_pedido
  on producto.cod_producto=detalle_producto_pedido.cod_producto
  inner join categoria
  on producto.cod_producto=categoria.cod_producto
  where categoria.cod_categoria='001'
 group by producto.nombre_producto;
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

funciones

Publicado por anonymous (15 intervenciones) el 14/12/2020 19:58:41
Las funciones normalmente devuelven un valor.

Tú pretendes obtener un nombre de producto y una cantidad de éste además.

Ahí se podría hacer un stored procedure que devuelva esos dos valores, por favor pruebalo y podría quedarte así.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
CREATE OR REPLACE PROCEDURE SPR_R_ObtenerProducto
(
  p_CATEGORIA  IN  categoria.cod_categoria%TYPE,
  Out_Data     OUT SYS_REFCURSOR
)
 
IS
 
BEGIN
      OPEN Out_Data for
      select producto.nombre_producto, count(producto.cod_producto) as productos  from producto
	  inner join detalle_producto_pedido
	  on producto.cod_producto=detalle_producto_pedido.cod_producto
	  inner join categoria
	  on producto.cod_producto=categoria.cod_producto
	  where categoria.cod_categoria=p_CATEGORIA
	  group by producto.nombre_producto;
 
END SPR_R_ObtenerProducto;

Igual, también podrías crear una función que te devuelva una tabla
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar