Public.getpercentavailabilityinwindow (function)

From dbscript Online Help
Jump to: navigation, search

wikibot[edit]

Function public.getpercentavailabilityinwindow

Source[edit]

CREATE OR REPLACE FUNCTION public.getpercentavailabilityinwindow(integer, character varying, integer, timestamp without time zone, timestamp without time zone)
 RETURNS double precision
 LANGUAGE plpgsql
AS $function$
   DECLARE
	nid ALIAS FOR $1;
	ipid ALIAS FOR $2;
	sid ALIAS FOR $3;
	xtime ALIAS FOR $4;
	ytime ALIAS FOR $5;
	downtime float8;
   BEGIN
	downtime := getOutageTimeInWindow(nid, ipid, sid, xtime, ytime);
	IF xtime > ytime THEN
		RETURN 100 * (1 - (downtime / (EXTRACT(EPOCH FROM (xtime - ytime))* 1000)));
	ELSE
		RETURN 100 * (1 - (downtime / (EXTRACT(EPOCH FROM (ytime - xtime))* 1000)));
	END IF;
   END;
$function$