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

Kolom dihitung dari kolom lain?

Kolom yang Dihasilkan adalah salah satu pendekatan yang baik untuk versi MySql yaitu 5.7.6 ke atas.

Ada dua jenis Kolom yang Dihasilkan:

  • Virtual (default) - kolom akan dihitung dengan cepat saat rekaman dibaca dari tabel
  • Disimpan - kolom akan dihitung ketika record baru ditulis/diperbarui dalam tabel

Kedua tipe tersebut dapat memiliki batasan NOT NULL, tetapi hanya Generated Column yang disimpan yang dapat menjadi bagian dari indeks.

Untuk kasus saat ini, kita akan menggunakan kolom tersimpan yang dihasilkan. Untuk mengimplementasikan, saya telah mempertimbangkan bahwa kedua nilai yang diperlukan untuk perhitungan ada dalam tabel

CREATE TABLE order_details (price DOUBLE, quantity INT, amount DOUBLE AS (price * quantity));

INSERT INTO order_details (price, quantity) VALUES(100,1),(300,4),(60,8);

jumlah akan secara otomatis muncul di tabel dan Anda dapat mengaksesnya secara langsung, juga perlu diketahui bahwa setiap kali Anda akan memperbarui salah satu kolom, jumlah juga akan diperbarui.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Mengubah Kumpulan Karakter dari latin1 ke UTF8 di MySQL

  2. Bagaimana Fungsi OCT() Bekerja di MySQL

  3. pengkodean karakter aneh dari data yang disimpan, skrip lama menunjukkan kepada mereka yang baru tidak

  4. Dengan MySQL, bagaimana saya bisa menghasilkan kolom yang berisi indeks catatan dalam sebuah tabel?

  5. Bagaimana cara kerja indeks MySQL?