Terkadang Anda mungkin perlu membuat urutan di MySQL. Karena MySQL tidak memiliki fungsi bawaan untuk membuat urutan, Anda perlu membuatnya melalui kueri SQL. Berikut cara membuat sequence di MySQL menggunakan query sequence MySQL.
Cara Membuat Urutan di MySQL
Berikut langkah-langkah membuat sequence di MySQL. Ada berbagai cara untuk menghasilkan urutan di MySQL.
Buat Urutan Menggunakan AUTO_INCREMENT
Anda cukup menyimpan urutan MySQL Anda dalam kolom menggunakan atribut AUTO_INCREMENT selama pembuatan tabel. Katakanlah Anda ingin membuat tabel pesanan(id, tanggal_pesanan, jumlah) dan simpan urutan di id kolom.
mysql> create table orders(id int AUTO_INCREMENT PRIMARY KEY, order_date date, amount int); mysql> insert into orders(order_date, amount) values('2020-08-01', 250), ('2020-08-02',125), ('2020-08-03',300); mysql> select * from orders; +----+------------+--------+ | id | order_date | amount | +----+------------+--------+ | 1 | 2020-08-01 | 250 | | 2 | 2020-08-02 | 125 | | 3 | 2020-08-03 | 300 | +----+------------+--------+
Pada tabel di atas, kita mendefinisikan id kolom sebagai kunci utama kami dan sertakan opsi AUTO_INCREMENT untuk secara otomatis menambah dan menyimpan nilai kunci utama di dalamnya.
Harap dicatat, MySQL memungkinkan Anda untuk memiliki hanya satu kolom AUTO_INCREMENT per tabel dan itu juga, sebagai kunci utama.
Dalam kueri INSERT di atas, kami hanya memberikan nilai untuk tanggal_pesanan dan jumlah kolom tetapi bukan id kolom tetapi MySQL secara otomatis membuat urutannya.
Bonus Baca :Cara Membandingkan Dua Tabel di MySQL
Buat Urutan Tanpa Menggunakan AUTO_INCREMENT
Katakanlah Anda ingin membuat kolom urutan lain tanpa menggunakan AUTO_INCREMENT. Dalam hal ini, Anda perlu menggunakan pernyataan UPDATE untuk menghitung dan mengisi kolom urutan ini secara matematis.
Misalnya, mari kita tambahkan urutan kolom ke tabel di atas untuk menyimpan urutan baru.
mysql> alter table orders add column sequence int;
Bonus Baca :Cara Menyalin Tabel di MySQL
Selanjutnya, kami menggunakan pernyataan UPDATE untuk membuat urutan di MySQL. Kami akan membuat urutan yang dua kali id nilai kolom
mysql> update orders set sequence=2*id; mysql> select * from orders; +----+------------+--------+----------+ | id | order_date | amount | sequence | +----+------------+--------+----------+ | 1 | 2020-08-01 | 250 | 2 | | 2 | 2020-08-02 | 125 | 4 | | 3 | 2020-08-03 | 300 | 6 | +----+------------+--------+----------+
Bonus Baca :Cara Mendapatkan Data Satu Bulan Terakhir di MySQL
Kami juga dapat membuat urutan non-linier dengan memperbarui rumus yang digunakan dalam pernyataan UPDATE. Berikut query SQL untuk menghasilkan urutan nilai Square (y x y) dari id kolom
mysql> update orders set sequence=id*id; mysql> select * from orders; +----+------------+--------+----------+ | id | order_date | amount | sequence | +----+------------+--------+----------+ | 1 | 2020-08-01 | 250 | 1 | | 2 | 2020-08-02 | 125 | 4 | | 3 | 2020-08-03 | 300 | 9 | +----+------------+--------+----------+
Ubiq memudahkan untuk memvisualisasikan data dalam hitungan menit, dan memantau di dasbor waktu nyata. Cobalah Hari ini!