What is wrong with this function. It gives the error "syntax error at return"
create function total (number1 integer, number2 integer, number3 integer)
returns integer as $$
begin
return number1 + number2 + number3;
end
$$
language sql
You need to change language:
create function total (number1 integer, number2 integer, number3 integer)
returns integer as
$$
begin
return number1 + number2 + number3;
end;
$$
language plpgsql --here
You are mixing PL/pgSQL syntax with SQL syntax. A SQL function does not have a return part, use select instead and remove the begin ... end block:
create function total (number1 integer, number2 integer, number3 integer)
returns integer
as
$$
select number1 + number2 + number3;
$$
language sql;
For simple expressions like that a SQL function is more efficient than a PL/pgSQL function.