- Mailing list pgsql-sql

From Ismail Kizir
Subject
Date
Msg-id 014801bf0abc$184ea580$a300aec3@kaplan
Whole thread Raw
Responses Re: [SQL] Date: Wed, 29 Sep 1999 23:49:15 +0300  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-sql
Hi all,

I need more information and examples for pl/pgsql.
The examples found on the source tree of postgres are not sufficient,
because they are all alphanumerical examples. I need function examples for
numerical computations.
I tried to code the example below but it responded with error message
something like '$= operator not defined for types int4 and float8 ...'

Thanks in advance.
Ismail Kizir

CREATE FUNCTION fCurr (date, int2, float8, int2) RETURNS float8  AS ' DECLARE      fcDate ALIAS FOR $1;        --
Conversiondate      fromCurrID ALIAS FOR $2;  -- Which currency to convert      Amount ALIAS FOR $3;       -- Amount to
convert     toCurrID ALIAS FOR $4;      -- Convert to which currency?      BolenCarpan float8;      BolunenCarpan
float8;BEGIN    IF fromCurrID = toCurrID THEN      RETURN Amount; -- If source and destination are the same, the
result
is the input amount   END IF;
   IF fromCurrID = 1 THEN  -- If we convert the national currency     BolunenCarpan = 1;   ELSE      SELECT Rate FROM
CurrDailyINTO BolunenCarpan WHERE cDATE = fcDate
 
AND CurrID::int2=fromCurrID::int2;      IF NOT FOUND THEN         RAISE EXCEPTION ''Currency info for % #%d not
found'',fcDate,fromCurrID      END IF;   END IF;
    IF toCurrID = 1 THEN  -- If we convert to national currency       BolenCarpan = 1;   ELSE       SELECT Rate FROM
CurrDailyINTO BolenCarpan WHERE cDATE = fcDate AND
 
CurrID::int2=toCurrID::int2;       IF NOT FOUND THEN         RAISE EXCEPTION ''Currency info for % #%d not
found'',fcDate,fromCurrID       END IF;   END IF;   RETURN Amount*BolunenCarpan/BolenCarpan;
END;
' LANGUAGE 'plpgsql';



pgsql-sql by date:

Previous
From: Stuart Rison
Date:
Subject: self-join and DISTINCT quandry.
Next
From: Tom Lane
Date:
Subject: Re: [SQL] self-join and DISTINCT quandry.