From: | Cristobal Alexis Ibarra Gonzalez <cristobaal(at)gmail(dot)com> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Ayuda para pasar resultados de una tabla en csv |
Date: | 2016-02-25 20:04:42 |
Message-ID: | CAAYhqpsRHDRmusOmdsTfgWw-OYM3voMdJx7S=nggNFqyBqhR0g@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Ahí va
CREATE OR REPLACE FUNCTION fn_normalizardireccion(Var_lote VARCHAR)
RETURNS void AS $$
DECLARE
BEGIN
/*Insertar los datos de la tabla Direcciones_TMP hacia la tabla
direcciones*/
INSERT INTO DIRECCIONES( DIRECCION, COMUNA, LOTE)
SELECT DIRECCION
,COMUNA
,LOTE
FROM DIRECCIONES_TMP WHERE LOTE = Var_lote;
--SET client_encoding TO LATIN1;
COPY (
SELECT DISTINCT
DN.ID_DIRECCIONES
,DN.LOTE
,DN.DIRECCION_COPIA
,DN.CALLE
,DN.NUMERAL
,DN.RESTO
,DN.COMUNA
,CAST(MD.UTM_NORTE as numeric) AS UTM_NORTE
,CAST(MD.UTM_ESTE as numeric) AS UTM_NORTE
FROM DIRECCIONESNORMALIZADA AS DN LEFT JOIN
MaestroDirecciones AS MD ON DN.COMUNA=MD.COMUNA AND DN.CALLE=MD.CALLE AND
DN.NUMERAL=MD.NUMERO
WHERE LOTE = $1 ORDER BY DN.ID_DIRECCIONES
) TO '/home/user/Archivo.csv' WITH CSV HEADER;
END;
$$ LANGUAGE plpgsql;
El 25 de febrero de 2016, 17:01, Anthony Sotolongo <asotolongo(at)gmail(dot)com>
escribió:
> ese error significa "undefined_column". , puedes adjuntar el código de la
> función?
>
> saludos
>
>
> On 25/02/16 16:59, Cristobal Alexis Ibarra Gonzalez wrote:
>
> Probe ingresando y el error fue el mismo.
>
> WHERE DN.x3= *$1 *ORDER BY DN.X7
>
> ********** Error **********
>
>
> SQL state: 42703
>
> El 25 de febrero de 2016, 16:53, Anthony Sotolongo <
> <asotolongo(at)gmail(dot)com>asotolongo(at)gmail(dot)com> escribió:
>
>> Hola Cristobal, que problema te da? error,cual?, no guarda en el CSV? has
>> probado utilizar $N(N=numero del parámetro en la función) en vez del nombre
>> de la variable
>>
>>
>> Saludos
>>
>> On 25/02/16 16:42, Cristobal Alexis Ibarra Gonzalez wrote:
>>
>> Estimados,
>>
>> Buenas tardes, les escribo porque quisiera saber si me pueden ayudar con
>> lo siguiente:
>>
>> He creado una función que a la cual se le entrega un parámetro de entrada
>> de tipo Varchar.
>>
>> Al final de todo lo que realizo deseo pasar el resultado de una query a
>> un archivo csv, cuando ejecuto la sentencia fuera de la función esta hace
>> todo de manera perfecta, el problema que tengo sucede cuando va dentro de
>> la función y principalmente creo que lo hace por la variable que estoy
>> usando.
>>
>> SET client_encoding TO LATIN1;
>>
>> COPY (
>> SELECT DISTINCT
>> DN.x1
>> ,DN.x2
>> ,DN.x3
>> ,DN.x4
>> ,DN.x5
>> ,DN.x6
>> ,DN.x7
>> ,CAST(MD.x8as numeric) AS x9
>> ,CAST(MD.x9as numeric) AS x9
>> FROM TABLA1 AS DN LEFT JOIN
>> TABLA2 AS MD ON DN.COMUNA=MD.COMUNA AND DN.CALLE=MD.CALLE AND
>> DN.NUMERAL=MD.NUMERO
>> WHERE LOTE = Var_lote ORDER BY DN.ID_DIRECCIONES
>> WHERE DN.x3= *Var_lote *ORDER BY DN.X7
>>
>> Donde Var_lote es la variable que le entrego a la función para que esta
>> se ejecute. Personalmente creo que el problema esta en el
>>
>> WHERE DN.x3= Var_lote ORDER BY DN.X7
>>
>> Esto porque si yo agrego un string y saco la variable esta funciona
>> adecuadamente en la función. WHERE DN.x3= 'ejemplo1234' ORDER BY DN.X7
>>
>> --
>> Con respeto y cariño,
>>
>>
>> Atentamente
>> Cristóbal Ibarra González
>>
>>
>>
>
>
> --
> Con respeto, admiración y cariño,
>
>
> Atentamente
> Cristóbal Ibarra González
>
>
>
--
Con respeto, admiración y cariño,
Atentamente
Cristóbal Ibarra González
From | Date | Subject | |
---|---|---|---|
Next Message | Anthony Sotolongo | 2016-02-25 20:36:42 | Re: Ayuda para pasar resultados de una tabla en csv |
Previous Message | Anthony Sotolongo | 2016-02-25 20:01:54 | Re: Ayuda para pasar resultados de una tabla en csv |