SQL группировка и подсчет с использованием существующей строки - PullRequest
0 голосов
/ 16 ноября 2011

Допустим, у нас есть таблица Requests со структурой:

user_id 
product_id 
count

С такими записями, как:

1 1 5  
1 2 6  
1 1 3
2 1 7
2 1 3
2 2 5

Я хочу подсчитать, сколько каждого продукта имеет каждый пользователь.

И получить вывод как это:

1 1 8
1 2 6
2 1 10
2 2 5

Ответы [ 3 ]

2 голосов
/ 16 ноября 2011

Использование GROUP BY с SUM статистической функцией:

SELECT user_id, product_id, SUM(count) AS total
FROM Requests
GROUP BY user_id, product_id
2 голосов
/ 16 ноября 2011

Ваш запрос будет выглядеть примерно так:

SELECT user_id, product_id, SUM(`count`)
FROM Requests
GROUP BY user_id, product_id

Я бы не назвал поле "count", если бы у меня был выбор, так как это функция SQL и может вызвать странные конфликты имен.

0 голосов
/ 16 ноября 2011

Учебное пособие по использованию GROUP BY можно найти здесь:

Вы также можете найти конкретную информацию о синтаксисе и использовании GROUP BY в MySQL в Руководстве по MySQL:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...