Re: ayuda con función

From: Álvaro Hernández Tortosa <aht(at)nosys(dot)es>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: ayuda con función
Date: 2011-08-14 00:40:26
Message-ID: 4E47197A.4000601@nosys.es
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El 12/08/11 18:28, Virginia escribió:
> Buen día Lista!!!
> Agregué una función en mi base de datos para calcular la distancia
> entre dos puntos, se ejecuta bien para efectos de agregarse como
> función, pero al momento de utilizarla me da un error, me pueden
> ayudar a saber por qué? qué es lo que estoy haciendo mal???
> Esta es la función:
>
> -- Function: calculo_distancia(numeric, numeric, numeric, numeric)
>
> -- DROP FUNCTION calculo_distancia(numeric, numeric, numeric, numeric);
>
> CREATE OR REPLACE FUNCTION calculo_distancia(numeric, numeric,
> numeric, numeric)
> RETURNS integer AS
> $BODY$
> DECLARE LATITUD_1 ALIAS FOR $1;
> LONGITUD_1 ALIAS FOR $2;
> LATITUD_2 ALIAS FOR $3;
> LONGITUD_2 ALIAS FOR $4;
>
>
> BEGIN
> SELECT (acos(sin(radians(LATITUD_1)) * sin(radians(LATITUD_2)) +
> cos(radians(LATITUD_1)) * cos(radians(LATITUD_2)) *
> cos(radians(LONGITUD_1) - radians(LONGITUD_2))) * 6378) as resultado;
> RETURN resultado;

Hola, Virginia, he leído que ya te funciona, pero tengo dos
preguntas que te pueden ayudar:

- ¿Por qué no escribirla en lenguaje SQL, en lugar de plpgsql? Es una
función muy simple, no necesitas plpgsql para ello.
- Si tienes más funciones con necesidades similares ¿has mirado PostGIS?

Saludos,

Álvaro

--
Álvaro Hernández Tortosa

-----------
NOSYS
Networked Open SYStems

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Hugo César 2011-08-15 19:53:18 Duda acerca Tsearch con acentos
Previous Message Gabriel Hermes Colina Zambra 2011-08-13 21:15:07 Rv: RESPALDAR SCHEMAS DE CONSULTAS EN CASCADA Solucionado