[pgsql-jp: 36030] Re: PostgreSQLのシーケンス番号処理について

Yusuke ITO ito_yusuke @ white.livedoor.com
2005年 9月 22日 (木) 12:50:06 JST


伊東と申します。

--T.Nishimura<nisimura @ weloveya.com> wrote:
> SELECT NEXTVAL('table_no_seq') FROM table;
> を、使うと現在tableに登録されているレコード数分
> NEXTVALを取得している様です。
> 
> FROMを外すと、1件しか、結果が返ってこないのに
> 付けると、複数のNEXTVALが返ってくるのはどうしてでしょうか?

SELECT 'a';
と
SELECT 'a' FROM table;
と
SELECT 'a',* FROM table;
の違いを考えてみてはいかがでしょうか。

NEXTVAL()は関数ですから、評価されるたびにシーケンスが増えていきますよね。
意図通りの使い方だったのですか?
> SELECT NEXTVAL('table_no_seq') FROM table;
って。

--
伊東 祐介
ito_yusuke @ white.livedoor.com




-----------------------------------------------
得するキャンペーンやプレゼント情報を是非ご覧下さい!
livedoor 懸賞
http://present.livedoor.com/




pgsql-jp メーリングリストの案内