Schema
Owner
postgres
Descriptions
Function renvoyant vrai si le paramètre pheure correspond à un suivi 4 heures (0,4,8,12,16,20 heure) avec la précision de ptolerance (second paramètre) minute
Options
Option | Value |
---|---|
Returns |
boolean |
Language |
|
Parameters |
pheure time ptolerance integer |
Definition
CREATE OR REPLACE FUNCTION public.ps_suivi4h (
pheure time,
ptolerance integer
)
RETURNS boolean AS
$span$
DECLARE
nb_heure REAL;
nb_minute REAL;
deltaavantheure integer;
BEGIN
deltaavantheure = 60 - ptolerance;
SELECT date_part('hour' ::text, pheure ::"time") into nb_heure;
SELECT date_part('minute' ::text, pheure ::"time")into nb_minute;
if ((nb_heure = 0) and (nb_minute < ptolerance)) or ((nb_heure = 23) and (
nb_minute >= deltaavantheure)) then
return true;
end if;
if ((nb_heure = 4) and (nb_minute < ptolerance)) or ((nb_heure = 3) and (
nb_minute >= deltaavantheure)) then
return true;
end if;
if ((nb_heure = 8) and (nb_minute < ptolerance)) or ((nb_heure = 7) and (
nb_minute >= deltaavantheure)) then
return true;
end if;
if ((nb_heure = 12) and (nb_minute < ptolerance)) or ((nb_heure = 11) and (
nb_minute >= deltaavantheure)) then
return true;
end if;
if ((nb_heure = 16) and (nb_minute < ptolerance)) or ((nb_heure = 15) and (
nb_minute >= deltaavantheure)) then
return true;
end if;
if ((nb_heure = 20) and (nb_minute < ptolerance)) or ((nb_heure = 19) and (
nb_minute >= deltaavantheure)) then
return true;
end if;
-- autres cas
return FALSE;
EXCEPTION
WHEN OTHERS THEN
raise notice 'heure : % - % ', pheure,nb_heure;
return false;
END;
$span$
LANGUAGE 'plpgsql'
VOLATILE
CALLED ON NULL INPUT
SECURITY INVOKER
COST 100;
COMMENT ON FUNCTION public.ps_suivi4h(pheure time, ptolerance integer)
IS 'Function renvoyant vrai si le paramètre pheure correspond à un suivi 4 heures (0,4,8,12,16,20 heure) avec la précision de ptolerance (second paramètre) minute';
This file was generated with SQL Manager for PostgreSQL (www.pgsqlmanager.com) at 13/03/2014 13:23 |