Cột được tạo là một trong những cách tiếp cận tốt cho phiên bản MySql là 5.7.6 trở lên.
Có hai loại Cột được Tạo:
- Ảo (mặc định) - cột sẽ được tính toán nhanh khi arecord được đọc từ một bảng
- Đã lưu trữ - cột sẽ được tính khi bản ghi mới được ghi / cập nhật trong bảng
Cả hai loại đều có thể có các hạn chế KHÔNG ĐẦY ĐỦ, nhưng chỉ một Cột được Tạo được lưu trữ mới có thể là một phần của chỉ mục.
Đối với trường hợp hiện tại, chúng tôi sẽ sử dụng cột được tạo được lưu trữ. Để triển khai, tôi đã xem xét rằng cả hai giá trị cần thiết để tính toán đều có trong bảng
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);
số tiền sẽ tự động bật lên trong bảng và bạn có thể truy cập trực tiếp vào nó, cũng xin lưu ý rằng bất cứ khi nào bạn cập nhật bất kỳ cột nào, số tiền cũng sẽ được cập nhật.