Entradas

Mostrando las entradas de 2017

Solución para usar función make_interval en postgresql 9.3

La funcion make_interval   fue agregada desde la versión postgresql 9.4 en adelante, permite convertir un valor ya sea character varying, integer o cualquier otro, en un tipo de dato interval. El tipo de dato interval es muy util para trabajar con operaciones con fechas, por ejemplo: Si queremos restarle un mes a una fecha cualquiera, hay muchos aspectos que hay que considerar ,como el que todos los meses no tienen la misma cantidad de días. #Select date '2017-07-20' - interval '1 month' as fecha; Se obtiene de respuesta : "2017-06-20 00:00:00" #Select date '2017-03-31' - interval '1 month'; Se obtiene de respuesta : "2017-02-28 00:00:00" Si observamos el primer ejemplo se puede observar que al restarle un mes  con el tipo de dato interval el sistema se encarga propia mente de hacer el calculo. El segundo ejemplo explica mucho mejor la potenciabilidad del tipo de dato interval ,.el cual determina cuantos dias restarles

PASAR UN ARRAY COMO PARAMETRO A UNA FUNCION DE POSTGRESQL (PARTE UNO)

Hola a todos, les traigo un nuevo problema que tuve con una function en postgresql. Basicamente lo que necesitaba era enviar como parametro de una function un array para posteriormente usarlo. El array se puede pasar como parametro de dos maneras, la primera escribiendo el nombre del array el tipo dato que contendra el array puede ser integer,varchar,text, etc y seguido por dos corchetes. CREATE OR REPLACE FUNCTION esquema.f_datosarray(nombre text[]) RETURNS void AS Para usar el array simplemente accedemos con el nombre del array y entre corchetes escribimos la posicion, cabe aclarar que hasta donde e revisado el array siempre comienza en uno, en caso de estar equivocado por favor me lo hacen saber. nombre[1] Aqui un ejemplo mas completo para que se entienda mejor. CREATE OR REPLACE FUNCTION esquema.f_datosarray(nombre text[]) RETURNS character varying AS $BODY$          DECLARE          dato character varying;          BEGIN                 --obtenemos el dato en la p

USO DE DBLINK EN FUNCIONES DE POSTGRESQL(PARTE UNO)

Imagen
PRIMERA PARTE. Hola todos, les quiero mostrar como solucione un problema que tuve con los dblink en postgresql, busque mucho por internet pero no encontre mucha información, por eso quiero aportar algo para quienes esten en la misma situación. Mi problema era que necesitaba obtener datos de otra base de datos y ademas relacionarlos con mi tabla, acontinuacion explico mejor. En mi base de datos (dbmibase) tenía una tabla direcciones a la cual necesito agregarle datos de pais, provincia, canton y parroquia. En la otra base de datos (dbexterior) se encontraban tablas de paises, provincias,cantones y parroquias relacionadas entre si, lo cual me parecia algo redundante crear esas tablas en mi base de datos. Entonces busque la manera de acceder a esas tablas externas y me encontre con la funcion dblink de postgresql. Basicamente dblink es una funcion que nos permite realizar una consulta sql a una base de datos externa. Como primer paso hay que instalar la libreria que ya viene