można wykorzystywać procedurę przechowywaną w PL/PGSQL. Spójrz w [Docs] [1]
Coś jak ten
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;
pozwoli Ci zaoszczędzić czas udostępnia gościom za wysłanie kolejnego oświadczenia. To nie powinno być wąskie gardło wydajności. Tak krótka odpowiedź: po prostu użyj dwóch zapytań. To dobrze i tak to robisz w SQL.
[1]: http://www.postgresql.org/docs/8.4/static/plpgsql.html docs
Jeśli chcesz zrobić jedną rzecz, potem drugi, nie jesteś naprawdę robi je w tym samym czasie; możesz albo wyświetlać wyniki zapytania przed aktualizacją, albo po niej. –