PL / pgSQL bir saklı yordam kullanabilirsiniz. [Dokümanlar] bir göz atın [1]
Something like this
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;
Başka bir açıklama göndermek için gidiş dönüş zaman kazandıracak. Bu performans engel olmamalıdır. Yani kısa cevap: Sadece iki sorgu kullanabilirsiniz. O güzel ve bu SQL bunu nasıl.
[1]: http://www.postgresql.org/docs/8.4/static/plpgsql.html docs