Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Cara mendapatkan ID alfanumerik berikutnya berdasarkan nilai yang ada dari MySQL

Jika Anda menggunakan MyISAM, maka Anda dapat membuat kunci utama majemuk pada bidang teks + bidang kenaikan otomatis. MySQL akan menangani penambahan nomor secara otomatis. Itu adalah bidang yang terpisah, tetapi Anda bisa mendapatkan efek yang sama.

CREATE TABLE example (
company_name varchar(100),
key_prefix char(4) not null,
key_increment int unsigned auto_increment,
primary key co_key (key_prefix,key_increment)
) ENGINE=MYISAM;

Saat Anda melakukan penyisipan ke dalam tabel, key_increment field akan bertambah berdasarkan nilai tertinggi berdasarkan key_prefix . Jadi masukkan dengan key_prefix "smit" akan dimulai dengan 1 di key_inrement , key_prefix "jone" akan dimulai dengan 1 di key_inrement , dll.

Kelebihan:

  • Anda tidak perlu melakukan apa pun dengan menghitung angka.

Kekurangan:

  • Anda memiliki kunci yang dibagi menjadi 2 kolom.
  • Ini tidak bekerja dengan InnoDB.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara mengimpor file SQL menggunakan baris perintah di MySQL?

  2. Jumlah perkalian kolom untuk baris dengan ID serupa di MySQL

  3. Pencarian menunjukkan semua produk

  4. masalah dengan nama kolom 'ketik' di Rails 3

  5. bagaimana cara memilih maksimum kolom string/int campuran?