2013-12-23 6 views
0

можно легко выбрать сумму одного столбца с помощью функции SUM() в MySQL следующим образом:Выбор двух столбчатых сумм в MySQL?

SELECT SUM(`someColumn`) FROM `table` 

Это также можно вернуть сумму второго столбца с тем же запросом? Подобно этому:

SELECT SUM (`someColumn`, `anotherColumn`) FROM `table` 

Запуск такой запрос возвращает мне следующее нарушение прав доступа:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' `anotherColumn`) FROM `table`' at line 1 
+0

Желаешь добавить вместе два столбца или показать их отдельно? – PeterRing

+0

@PeterRing Отдельно. :) – ReactingToAngularVues

ответ

5

Попробуйте с:

SELECT SUM(COALESCE(`someColumn`, 0)+ COALESCE(`anotherColumn`, 0)) as TotalSum FROM `table` 

или если вы хотите их отдельно:

SELECT SUM(`someColumn`) as Sum1, SUM(`anotherColumn`) as Sum2 FROM `table` 
+0

спасибо. :) – ReactingToAngularVues

0

Более простой метод:

SELECT col1, col2, col3, (col1+col2+col3) AS Total FROM table; 
0

Если вы хотите, чтобы подвести более одного столбца, вы просто выбираете сумму более одного столбца.

Если вы хотите только общее количество столбцов, вы можете сделать что-то вроде:

SELECT SUM(col1+col2+...+coln) AS all_total 

Если вы хотите сохранить суммы отдельно, вы можете сделать:

SELECT SUM(col1) AS total1, SUM(col2) AS total2, ..., SUM(coln) AS totaln 
Смежные вопросы