Thread: Creating a function

Creating a function

From
Glenn Schultz
Date:
Hi,

I am trying to create a function to bin based on user value and I am stuck.  I followed the
postgres create function tutoriall but I am missing something.  Any help would be appreciated as I think I am just going further off course at this point

Glenn

CREATE FUNCTION "IncentiveBin"(in Gwac double precision, 
 in MtgRaate double precision, 
 in BinSize double precision)
  RETURNS double precision
    LANGUAGE 'sql'
    VOLATILE PARALLEL SAFE 
AS
$function$
BEGIN
ceiling((Gwac - MtgRate)/BinSize) * BinSize;
END
$function$

Re: Creating a function

From
Pavel Křehula
Date:
Hi,
something like this?

create or replace FUNCTION "IncentiveBin"(in Gwac double precision,
                                        in MtgRaate double precision,
                                        in BinSize double precision)
  RETURNS double precision
    LANGUAGE sql
    VOLATILE PARALLEL SAFE
as 'select ceiling(($1 - $2)/$3) * $3;';

select "IncentiveBin"(1000.0,9,212);

Pavel

Dne 28.11.2018 10:35:09, "Glenn Schultz" <glenn@bondlab.io> napsal:

Hi,

I am trying to create a function to bin based on user value and I am stuck.  I followed the
postgres create function tutoriall but I am missing something.  Any help would be appreciated as I think I am just going further off course at this point

Glenn

CREATE FUNCTION "IncentiveBin"(in Gwac double precision, 
 in MtgRaate double precision, 
 in BinSize double precision)
  RETURNS double precision
    LANGUAGE 'sql'
    VOLATILE PARALLEL SAFE 
AS
$function$
BEGIN
ceiling((Gwac - MtgRate)/BinSize) * BinSize;
END
$function$