CREATE tbl (
 no SERIAL, -- 自動で連番
 name text,
 tel text,
 fax text
);

INSERT INTO tbl(name) VALUES('tanaka');

たとえば上記のように、SERISALのあるテーブルに
データをINSERTした場合に、noにどの番号が割り当て
られたか、知る方法は無いのでしょうか?

nameは重複する可能性があるのでINSERT後に、
SELECT no FROM tbl WHERE name='tanaka';
とやっても、ダメです。

現在は下記のようにして調べていますが、
いまいち自信がありません。

BEGIN;
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
INSERT INTO tbl(name) VALUES('tanaka');
SELECT max(no) FROM tbl;
COMMIT