Думаю, вы пропустили какую-то концепцию здесь.ВОЗВРАТ не является ни ВОЗВРАЩЕНИЕМ, ни ВЫБОРОМ.это просто выбросить некоторую переменную.Чтобы это работало, выражение будет выглядеть так
declare tmp integer;
INSERT INTO items (
category_id,
description,
...)
VALUES(
#{category_id},
#{description},
...)
RETURNING item_id INTO tmp
return tmp;
вы можете изменить целое число на тип данных вашего первичного ключа