2016-10-03 4 views
1


Я новичок в mySQL и нуждаюсь в помощи.
У меня есть база данных, как это (значения пример):сумма значений полей из столбца с условием

name |region  |population| 
---------------------------------- 
Cuba |Carribean  |10  | 
Ukraine|Eastern Europe|15  | 
Belarus|Eastern Europe|9   | 
Haiti |Carribean  |3   | 

Я хочу, чтобы найти общую численность населения региона (например, все население из Восточной Европы) и распечатать в виде таблицы названия региона и его общая численность населения ,

Но я не знаю, как найти сумму значения поля из одного столбца, но при условии из другого столбца.

Как сделать этот запрос?

+0

если мой ответ поможет вам решить проблему, то не забудьте оценить мою работу –

ответ

1

Try ниже запроса:

select name , region , sum(population) 
from region_table // table_name 
group by name , region 

Может быть, это поможет вам.

+0

NO! вам нужно сделать «группу за» всеми неагрегатами в выбранном вами. Только mysql принимает это, и это не очень хорошая привычка –

1
SELECT region, SUM(population) AS population 
FROM table 
GROUP BY region 
+0

Thanx много! Это работает отлично! Однако я хочу глубоко понять, как это работает (я имею в виду то, что AS). не могли бы вы объяснить, пожалуйста? – lessismore

+0

«AS» - это просто псевдоним, который вы можете поставить для своей колонки. Вы можете назвать его так, как хотите. Для группы вам действительно нужно прочитать хороший учебник, который объяснит это намного лучше меня: http://www.w3schools.com/sql/sql_groupby.asp –

+0

Отлично! Спасибо за ответ! – lessismore

Смежные вопросы