Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/07/2014, 08:51
Rev
 
Fecha de Ingreso: enero-2013
Mensajes: 22
Antigüedad: 11 años, 10 meses
Puntos: 0
Pregunta SELECT en SP y creación de tabla

Estimados,
no muy asiduo en los foros, pero tengo un problema con la creación de un SP para oracle, el cual debe estar compuesto por un select que consulta a una infinidad de tablas para traer como resultado dos columnas, i problema es que no e podido crear el sp que de devuelva el select y me cree una tabla con los parámetros que trae al frente en este caso SED y NIS .
espero que me puedan ayudar.

Saludos

Código SQL:
Ver original
  1. CREATE TABLE temp_nis
  2. AS
  3. SELECT DISTINCT BRID.SED, C.ACCOUNT_NUMBER AS NIS
  4. FROM po_elec_demand@dbl_po D, po_customer_connection@dbl_po CC,PO_CUSTOMER@dbl_po C,
  5.                 (SELECT DISTINCT PO_ELEC_ZONE.NAME SED,
  6. PO_FACILITY_TYPE.ID,
  7.  PO_FACILITY_TYPE.NAME,
  8. PO_ELEC_ZONE.TYPE,
  9.  PO_INT_ELEC_BREAK.ID BREAKID
  10. FROM POWERON.PO_ELEC_ADJACENCY@dbl_po  PO_ELEC_ADJACENCY,
  11. POWERON.PO_ELEC_EXTENT_TO_SECTION@dbl_po PO_ELEC_EXTENT_TO_SECTION,
  12. POWERON.PO_ELEC_ZONE@dbl_po PO_ELEC_ZONE,
  13. POWERON.PO_FACILITY_TYPE@dbl_po PO_FACILITY_TYPE,
  14. POWERON.PO_INT_ELEC_BREAK@dbl_po PO_INT_ELEC_BREAK,
  15. POWERON.PO_INT_ELEC_EXTENT@dbl_po PO_INT_ELEC_EXTENT,
  16.  POWERON.PO_INT_ELEC_JUNCTION@dbl_po PO_INT_ELEC_JUNCTION,
  17.                                  POWERON.PO_INT_ELEC_SPAN@dbl_po PO_INT_ELEC_SPAN,
  18.                                  (SELECT PO_ELEC_ZONE.NAME AS SED,
  19.                                          PO_FACILITY_TYPE.ID,
  20.                                          PO_FACILITY_TYPE.NAME,
  21.                                          PO_ELEC_ZONE.TYPE,RTRIM(LTRIM(SUBSTR(PO_INT_ELEC_BREAK.DESCRIPTION,LENGTH(PO_INT_ELEC_BREAK.DESCRIPTION)-5,LENGTH(PO_INT_ELEC_BREAK.DESCRIPTION)))) CODIGO
  22.                                       FROM  POWERON.PO_ELEC_ADJACENCY@dbl_po PO_ELEC_ADJACENCY,
  23.                                             POWERON.PO_ELEC_EXTENT_TO_SECTION@dbl_po PO_ELEC_EXTENT_TO_SECTION,
  24.                                             POWERON.PO_ELEC_ZONE@dbl_po PO_ELEC_ZONE,
  25.                                             POWERON.PO_FACILITY_TYPE@dbl_po PO_FACILITY_TYPE,
  26.                                             POWERON.PO_INT_ELEC_BREAK@dbl_po PO_INT_ELEC_BREAK,
  27.                                             POWERON.PO_INT_ELEC_EXTENT@dbl_po PO_INT_ELEC_EXTENT,
  28.                                             POWERON.PO_INT_ELEC_JUNCTION@dbl_po PO_INT_ELEC_JUNCTION,
  29.                                             POWERON.PO_INT_ELEC_SPAN@dbl_po PO_INT_ELEC_SPAN
  30.                                            WHERE PO_ELEC_ADJACENCY.NETWORK_SECTION_ID = PO_ELEC_EXTENT_TO_SECTION.NETWORK_SECTION_ID
  31.                                                  AND PO_ELEC_EXTENT_TO_SECTION.EXTENT_ID = PO_INT_ELEC_EXTENT.ID
  32.                                                  AND PO_INT_ELEC_EXTENT.ID = PO_INT_ELEC_SPAN.EXTENT_ID
  33.                                                  AND PO_INT_ELEC_SPAN.ID = PO_ELEC_ZONE.NORMAL_SPAN_ID
  34.                                                  AND PO_INT_ELEC_JUNCTION.ID = PO_ELEC_ADJACENCY.JUNCTION_ID
  35.                                                  AND PO_INT_ELEC_JUNCTION.BREAK_ID = PO_INT_ELEC_BREAK.ID
  36.                                                  AND PO_FACILITY_TYPE.ID = PO_INT_ELEC_BREAK.FACILITY_TYPE_ID
  37.                                                  AND ((PO_INT_ELEC_BREAK.FACILITY_TYPE_ID = 25 )
  38.                                                  AND (PO_ELEC_ZONE.TYPE='bt'))
  39.                                                 -- AND PO_ELEC_ZONE.NAME = '31454' -- Ingreso de SED a buscar sus Nis
  40.                                                ORDER BY PO_ELEC_ZONE.NAME) ZONA
  41.                 WHERE PO_ELEC_ADJACENCY.NETWORK_SECTION_ID = PO_ELEC_EXTENT_TO_SECTION.NETWORK_SECTION_ID
  42.                                AND PO_ELEC_EXTENT_TO_SECTION.EXTENT_ID = PO_INT_ELEC_EXTENT.ID
  43.                                AND PO_INT_ELEC_EXTENT.ID = PO_INT_ELEC_SPAN.EXTENT_ID
  44.                                AND PO_INT_ELEC_SPAN.ID = PO_ELEC_ZONE.NORMAL_SPAN_ID
  45.                                AND PO_INT_ELEC_JUNCTION.ID = PO_ELEC_ADJACENCY.JUNCTION_ID
  46.                                AND PO_INT_ELEC_JUNCTION.BREAK_ID = PO_INT_ELEC_BREAK.ID
  47.                                AND PO_FACILITY_TYPE.ID = PO_INT_ELEC_BREAK.FACILITY_TYPE_ID
  48.                                AND ((PO_INT_ELEC_BREAK.FACILITY_TYPE_ID = 24 )
  49.                                AND (PO_ELEC_ZONE.TYPE='bt'))
  50.                                AND PO_ELEC_ZONE.NAME = ZONA.CODIGO
  51.                             ORDER BY PO_ELEC_ZONE.NAME) BRID
  52. WHERE D.service_break_id = BRID.BREAKID
  53.                 AND D.demand_section_id = CC.demand_section_id
  54.                 AND C.ID = CC.CUSTOMER_ID
  55.  
  56. /
[/QUOTE]