Вы можете использовать хранимую процедуру в PL / pgSQL.Взгляните на [документы] [1]
Что-то как этот
CREATE FUNCTION run(fooVal int, booVal int)
RETURNS TABLE(fooVal int, booVal int)
AS $$
BEGIN
UPDATE table SET foo = fooVal WHERE boo= booVal;
RETURN QUERY SELECT fooVal, booVal from table WHERE ( foo = fooVal ) AND ( boo = booVal );
END;
$$ LANGUAGE plpgsql;
Вы сэкономите время туда и обратно для отправки другого заявления.Это не должно быть узким местом производительности.Итак, короткий ответ: просто используйте два запроса.Это нормально, и вот как вы делаете это в SQL.
[1]: http://www.postgresql.org/docs/8.4/static/plpgsql.html документы