Create stored procedure getoperatordetails in postgresql database.
Getting the three parameters in another stored procedure, but it is causing error, avoid the error and will get result True (or) False
CREATE OR REPLACE FUNCTION getoperatordetails(value character varying, operator character varying, fieldinputvalue character varying, retvalue boolean)
RETURNS SETOF boolean AS
$BODY$
declare
iVal numeric;
gVal numeric;
begin
IF fieldInputValue != ' ' AND operator!='equal' THEN
gVal := value :: numeric;
iVal := fieldInputValue:: numeric;
IF (operator = ('lesserThan') AND iVal < gVal) THEN
retValue= true;
ELSIF (operator = ('greaterThan') AND iVal > gVal) THEN
retValue= true;
ELSIF (operator = ('lessOrEqual') AND iVal <= gVal) THEN
retValue= true;
ELSIF (operator = ('greaterOrEqual') AND iVal >= gVal) THEN
retValue= true;
ELSIF (operator = ('equal') AND value = (fieldInputValue)) THEN
retValue= true;
ELSE
retValue= false;
END IF;
ELSIF (operator=('equal') AND value=(fieldInputValue)) THEN
retValue= true;
ELSE
retValue= false;
END IF;
return next retValue;
end;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100
ROWS 1000;
ALTER FUNCTION getoperatordetails(character varying, character varying, character varying, boolean)
OWNER TO postgres;
I need to get the result True (or) False
ERROR: argument of AND must not return a set
LINE 1: SELECT retValue AND getoperatordetails(value, operator, fiel...)