Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Nhân 2 cột cho mỗi hàng trong MySQL

Nhân hai cột số trên từng hàng (row-wise multiplication)

Dùng toán tử nhân * trực tiếp trong SELECT để tính tích hai cột trên cùng một hàng.

Cú pháp

SELECT cot1, cot2, cot1 * cot2 AS tenAlias
FROM tenBang;

Ví dụ minh họa

Tạo bảng MultiplicationDemo:

CREATE TABLE MultiplicationDemo (FirstPrice INT, SecondPrice INT);
INSERT INTO MultiplicationDemo VALUES (10,2), (4,2), (5,6), (6,3);

Truy vấn nhân 2 cột:

SELECT FirstPrice, SecondPrice, FirstPrice * SecondPrice AS MultiplicationResult
FROM MultiplicationDemo;

Kết quả

+------------+-------------+----------------------+
| FirstPrice | SecondPrice | MultiplicationResult |
+------------+-------------+----------------------+
|         10 |           2 |                   20 |
|          4 |           2 |                    8 |
|          5 |           6 |                   30 |
|          6 |           3 |                   18 |
+------------+-------------+----------------------+

Mở rộng

  • Nhân nhiều cột: cot1 * cot2 * cot3.
  • Kết hợp hàm: ROUND(cot1 * cot2, 2) làm tròn.
  • Tính tổng sản phẩm: SUM(cot1 * cot2) (tổng doanh thu = số lượng × đơn giá).
  • Xử lý NULL: COALESCE(cot1,0) * COALESCE(cot2,0) tránh kết quả NULL.

Lưu ý: Toán tử * hoạt động trên kiểu số (INT, DECIMAL, FLOAT...). Với chuỗi số, MySQL tự chuyển đổi (implicit cast) nhưng nên ép kiểu rõ ràng: CAST(cot AS DECIMAL(10,2)).