Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Tính toán giá trị cột từ một cột khác trong bảng khác

Đây là cách bạn có thể làm điều đó trong MySQL (câu hỏi của bạn được gắn thẻ cả mysqlsql-server )

CREATE TRIGGER tg_bi_order_contains_items 
BEFORE INSERT ON Order_contains_items
FOR EACH ROW
  SET NEW.Ordered_price = 
  (
    SELECT Unit_price * NEW.Quantity_ordered
      FROM Item
     WHERE Item_id = NEW.Item_id
     LIMIT 1
  );

CREATE TRIGGER tg_bu_order_contains_items 
BEFORE UPDATE ON Order_contains_items
FOR EACH ROW
  SET NEW.Ordered_price = 
  (
    SELECT Unit_price * NEW.Quantity_ordered
      FROM Item
     WHERE Item_id = NEW.Item_id
     LIMIT 1
  );

Đây là SQLFiddle bản demo




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách di chuyển cơ sở dữ liệu MS SQL đang chạy trên máy từ xa sang cơ sở dữ liệu MySQL cục bộ của tôi đang chạy trên linux, duy trì mã hóa

  2. Nhóm kết quả ngẫu nhiên của MySQL theo thứ tự theo

  3. MySQL:chọn * từ bảng có cột IN (null,) mà không có HOẶC

  4. Hợp nhất ngày từ một ngày giờ và thời gian từ một ngày giờ khác

  5. Laravel 5.5 Lỗi cơ sở bảng hoặc chế độ xem đã tồn tại:1050 Bảng 'người dùng' đã tồn tại