NEXTVAL (Lakehouse v1)
Pobiera następną wartość z sekwencji.
Składnia SQL
Dział zatytułowany „Składnia SQL”NEXTVAL(<sequence_name>)Zwracany typ
Dział zatytułowany „Zwracany typ”Liczba całkowita.
Przykłady SQL
Dział zatytułowany „Przykłady SQL”Ten przykład pokazuje, jak funkcja NEXTVAL działa z sekwencją:
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 │└─────────────────────────────────────────────────────┘Ten przykład pokazuje, jak sekwencje i funkcja NEXTVAL służą do automatycznego generowania i przypisywania unikatowych identyfikatorów wierszom tabeli.
-- Create a new sequence named staff_id_seqCREATE SEQUENCE staff_id_seq;
-- Create a new table named staff with columns for staff_id, name, and departmentCREATE TABLE staff ( staff_id INT, name VARCHAR(50), department VARCHAR(50));
-- Insert a new row into the staff table, using the next value from the staff_id_seq sequence for the staff_id columnINSERT INTO staff (staff_id, name, department)VALUES (NEXTVAL(staff_id_seq), 'John Doe', 'HR');
-- Insert another row into the staff table, using the next value from the staff_id_seq sequence for the staff_id columnINSERT INTO staff (staff_id, name, department)VALUES (NEXTVAL(staff_id_seq), 'Jane Smith', 'Finance');
SELECT * FROM staff;
┌───────────────────────────────────────────────────────┐│ staff_id │ name │ department │├─────────────────┼──────────────────┼──────────────────┤│ 2 │ Jane Smith │ Finance ││ 1 │ John Doe │ HR │└───────────────────────────────────────────────────────┘