2012-09-12 41 views
22

Đây là dữ liệu bảng của tôi StudentLàm thế nào để thêm giá trị cột trong mysql

enter image description here

Và đây là câu hỏi của tôi -

SELECT id, SUM(maths + chemistry + physics) AS total, maths, chemistry, physics 
FROM `student` 

nhưng nó được ném một hàng duy nhất -

id total maths chemistry physics 
118  760  55 67 55 

mặc dù tôi muốn áp dụng tổng cho tất cả các id .... hãy để tôi kn ow làm thế nào tôi có thể đạt được điều này?

Trả lời

54

Tổng là một hàm tổng hợp. Bạn không cần phải sử dụng nó. Đây là truy vấn đơn giản -

select *,(maths + chemistry + physics) AS total FROM `student` 
+2

+1 cho giải pháp rất dễ :) – Trialcoder

10

Nếu bạn đang yêu cầu nhận được tổng số điểm của mỗi học sinh, thì SUM không phải là những gì bạn cần.

SELECT id, 
    (maths+chemistry+physics) AS total, 
    maths, 
    chemistry, 
    physics 
FROM `student` 

Sẽ làm tốt công việc.

+0

một câu trả lời hấp dẫn khác .. các bạn rất tuyệt vời .... nền tảng rất hữu ích cho người học :) – Trialcoder

8

Bạn không cần sử dụng SUM cho thao tác này. Hãy thử truy vấn này:

SELECT id, (maths + chemistry + physics) AS total, maths, chemistry, physics 
FROM `student` 
0

Tất cả chức năng tổng hợp hoạt động trên các hàng được chỉ định bởi nhóm và hoạt động. Bạn cần thao tác trên các hàng riêng lẻ không phải là một tùy chọn cho bất kỳ hàm tổng hợp nào.

Các vấn đề liên quan