📣新登場!TiDB Cloud BYOC、TiDB Cloud Filesystem、PostgreSQL-compatible TiDB Cloud Starter がパブリックプレビュー中。このページは自動翻訳されたものです。原文はこちらからご覧ください。

NEXTVAL



シーケンスから次の値を取得します。

構文

NEXTVAL(<sequence_name>)

戻り値の型

整数です。

アクセス制御の要件

権限オブジェクトタイプ説明
ACCESS SEQUENCESEQUENCEシーケンスにアクセスします。

シーケンスにアクセスするには、操作を実行するユーザーまたはロールが ACCESS SEQUENCE 権限 を持っている必要があります。

例

次の例は、NEXTVAL 関数がシーケンスとどのように動作するかを示しています。

CREATE SEQUENCE my_seq; SELECT NEXTVAL(my_seq), NEXTVAL(my_seq), NEXTVAL(my_seq); ┌─────────────────────────────────────────────────────┐ │ nextval(my_seq) │ nextval(my_seq) │ nextval(my_seq) │ ├─────────────────┼─────────────────┼─────────────────┤ │ 1 │ 2 │ 3 │ └─────────────────────────────────────────────────────┘

次の例は、シーケンスと NEXTVAL 関数を使用して、テーブル内の行に一意の識別子を自動生成して割り当てる方法を示しています。

-- Create a new sequence named staff_id_seq CREATE SEQUENCE staff_id_seq; -- Create a new table named staff with an auto-generated staff_id CREATE TABLE staff ( staff_id INT DEFAULT NEXTVAL(staff_id_seq), name VARCHAR(50), department VARCHAR(50) ); -- Insert a new staff member with an auto-generated staff_id into the staff table INSERT INTO staff (name, department) VALUES ('John Doe', 'HR'); -- Insert another row INSERT INTO staff (name, department) VALUES ('Jane Smith', 'Finance'); SELECT * FROM staff; ┌───────────────────────────────────────────────────────┐ │ staff_id │ name │ department │ ├─────────────────┼──────────────────┼──────────────────┤ │ 3 │ Jane Smith │ Finance │ │ 2 │ John Doe │ HR │ └───────────────────────────────────────────────────────┘

このページは役に立ちましたか?