Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Mengira Lajur Secara Automatik Berdasarkan Lajur Lain dalam MySQL?
Kira lajur secara automatik berdasarkan lajur lain dalam MySQL
Dalam dunia pengaturcaraan pangkalan data, jadual adalah asas storan data, tetapi kadangkala adalah perlu untuk mendapatkan maklumat tambahan daripada lajur sedia ada. Di sinilah lajur yang dikira masuk, menyediakan cara untuk membuat lajur baharu yang nilainya dikemas kini secara automatik berdasarkan lajur lain.
Tetapan Pangkalan Data
Pertimbangkan borang berikut:
<code>id | value -------------- 1 6 2 70</code>
Pernyataan Masalah
Tugasnya ialah menambah lajur yang dipanggil "dikira" iaitu separuh daripada lajur "nilai". Lajur yang dikira ini harus dikemas kini secara automatik apabila lajur "nilai" berubah.
Penyelesaian: Jana lajur
MySQL 5.7.6 dan kemudiannya memperkenalkan ciri yang dipanggil "lajur terjana". Lajur ini membenarkan pengiraan dinamik berdasarkan lajur sedia ada, serupa dengan paparan, tetapi sebagai bahagian penting jadual.
Terdapat dua jenis lajur yang dijana:
Pencapaian
Dalam contoh ini kita akan menggunakan lajur terjana yang disimpan. Berikut ialah pernyataan SQL untuk menambahkannya:
<code>ALTER TABLE table_name ADD COLUMN calculated AS (value / 2) STORED;</code>
Ini akan membuat lajur baharu yang dipanggil "dikira" dengan separuh nilai lajur "nilai" setiap baris.
Kelebihan dan Nota
Menjana lajur mempunyai kelebihan berikut:
Contoh
Selepas menambah lajur yang dikira, jadual akan kelihatan seperti ini:
<code>id | value | calculated ----------------------- 1 6 3 2 70 35</code>
Kesimpulan
Lajur yang dijana menyediakan cara yang hebat untuk menambah lajur yang dikira pada jadual. Dengan memanfaatkan pilihan "disimpan", ia memastikan lajur yang dikira dikemas kini secara automatik dan boleh diindeks, memberikan lebih fleksibiliti dan kecekapan dalam pengurusan data.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengira Lajur Secara Automatik Berdasarkan Lajur Lain dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!