SQL - Menggunakan Urutan: Panduan untuk Pemula

Hai sana, para ahli basis data masa depan! Hari ini, kita akan memulai perjalanan menarik ke dunia urutan SQL. Jangan khawatir jika Anda baru belajar pemrograman - saya akan menjadi panduan ramah Anda, dan kita akan mengambil langkah demi langkah. Pada akhir panduan ini, Anda akan dapat membuat dan memanipulasi urutan seperti seorang ahli!

SQL - Using Sequences

Apa Itu Urutan?

Sebelum kita masuk ke detil, mari pahami apa itu urutan. Bayangkan Anda menomori halaman buku. Anda mulai dari 1, kemudian 2, 3, dan seterusnya. Itu sebenarnya apa yang dilakukan urutan di SQL - itu menghasilkan sebuah deret angka secara otomatis. Ini sangat berguna ketika Anda perlu memberikan penanda unik ke baris-baris di tabel basis data Anda.

Sekarang, mari kita eksplor bagaimana urutan bekerja di sistem basis data yang berbeda.

Urutan di MySQL

MySQL, salah satu sistem basis data yang populer, menangani urutan sedikit berbeda. Itu tidak memiliki objek SEQUENCE khusus seperti beberapa basis data lain. Sebaliknya, itu menggunakan sesuatu yang disebut AUTO_INCREMENT. Mari lihat bagaimana ini bekerja!

Membuat Tabel dengan AUTO_INCREMENT

CREATE TABLE students (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50),
grade INT
);

Dalam contoh ini, kita membuat tabel students. Kolom id diatur ke AUTO_INCREMENT, yang berarti MySQL akan secara otomatis menghasilkan nomor unik untuk setiap baris baru yang kita masukkan.

Mari kita masukkan beberapa data dan lihat apa yang terjadi:

INSERT INTO students (name, grade) VALUES ('Alice', 95);
INSERT INTO students (name, grade) VALUES ('Bob', 87);
INSERT INTO students (name, grade) VALUES ('Charlie', 92);

Sekarang, jika kita memilih semua baris dari tabel kita:

SELECT * FROM students;

Kita akan melihat sesuatu seperti ini:

id name grade
1 Alice 95
2 Bob 87
3 Charlie 92

Seperti yang Anda lihat, MySQL secara otomatis memberikan nilai id unik ke setiap baris. Itu seperti memiliki petugas perpustakaan yang menomori buku Anda secara otomatis!

Memulai Urutan di Nilai tertentu di MySQL

kadang-kadang, Anda mungkin ingin memulai urutan Anda di nilai tertentu. Mungkin Anda sedang mentransfer data dari sistem lama, dan Anda ingin melanjutkan dari tempat yang terhenti. MySQL mengijinkan kita melakukan ini!

Mengubah Nilai AUTO_INCREMENT

ALTER TABLE students AUTO_INCREMENT = 1000;

Perintah ini memberitahu MySQL untuk memulai nilai AUTO_INCREMENT di 1000 untuk tabel students kita. Mari kita masukkan siswa baru dan lihat apa yang terjadi:

INSERT INTO students (name, grade) VALUES ('David', 88);
SELECT * FROM students;

Sekarang tabel kita terlihat seperti ini:

id name grade
1 Alice 95
2 Bob 87
3 Charlie 92
1000 David 88

David mendapat id 1000, dan siswa baru yang kita tambahkan akan mendapat 1001, 1002, dan seterusnya. Itu seperti memulai chapter baru dalam bukunya!

Urutan di SQL Server

Sekarang, mari kita pindah gear dan lihat bagaimana urutan bekerja di SQL Server. Tidak seperti MySQL, SQL Server memiliki objek SEQUENCE khusus. Itu seperti memiliki mesin penghasil nomor khusus di basis data Anda!

Membuat Urutan

Ini adalah cara kita membuat urutan di SQL Server:

CREATE SEQUENCE student_id_seq
AS INT
START WITH 1
INCREMENT BY 1;

Ini membuat urutan student_id_seq yang dimulai dari 1 dan meningkatkan nilai setiap kali kita menggunakannya.

Menggunakan Urutan

Untuk menggunakan urutan baru kita, kita dapat melakukan hal seperti ini:

CREATE TABLE students (
id INT PRIMARY KEY,
name VARCHAR(50),
grade INT
);

INSERT INTO students (id, name, grade)
VALUES (NEXT VALUE FOR student_id_seq, 'Alice', 95);

INSERT INTO students (id, name, grade)
VALUES (NEXT VALUE FOR student_id_seq, 'Bob', 87);

Jika kita memilih dari tabel kita sekarang:

SELECT * FROM students;

Kita akan melihat:

id name grade
1 Alice 95
2 Bob 87

Klause NEXT VALUE FOR memberitahu SQL Server untuk menggunakan nilai berikutnya dari urutan kita.

Mengubah Urutan

Kita juga dapat mengubah urutan setelah membuatnya. Misalnya, untuk memulai dari nilai yang berbeda:

ALTER SEQUENCE student_id_seq
RESTART WITH 1000;

Sekarang jika kita memasukkan siswa baru:

INSERT INTO students (id, name, grade)
VALUES (NEXT VALUE FOR student_id_seq, 'Charlie', 92);

SELECT * FROM students;

Kita akan melihat:

id name grade
1 Alice 95
2 Bob 87
1000 Charlie 92

Itu seperti kita melompat di nomor penomoran kita!

Kesimpulan

Dan begitu, teman-teman! Kita telah melakukan perjalanan melalui negeri urutan SQL, meng eksplor bagaimana mereka bekerja di MySQL dan SQL Server. Ingat, urutan seperti asisten penomoran pribadi Anda, membantu Anda mengatur dan menandai data Anda secara unik.

Apakah Anda menggunakan AUTO_INCREMENT di MySQL atau objek SEQUENCE di SQL Server, ide pokoknya sama - secara otomatis menghasilkan nomor unik untuk membuat manajemen basis data Anda lebih mudah.

Buat terus, tetap bersemangat, dan sebelum Anda tahu, Anda akan membuat data urutan seperti seorang DJ basis data yang berpengalaman! Selamat coding, dan semoga query Anda selalu mengembalikan hasil yang Anda harapkan!

Credits: Image by storyset