2008-08-27 3 views
3

У меня есть одно поле, которое мне нужно суммировать, например, поименованные объекты Однако это поле может быть частью группы a или b В конце концов, мне нужно иметь все элементы, суммированные для группы a и группы bВозврат суммы элементов в зависимости от того, какой тип это

, когда я говорю сгруппированным, я имею в виду, что в другую таблицу находится LEFT OUTER JOIN, в предыдущей таблице есть тип для элементов, а тот, который соединен, имеет группу, назначенную для этого типа товара

Извините, ребята, я немного нового в sql. Я собираюсь опробовать то, что вы дали мне, чтобы вернуться к вам

Хорошо, я чувствую, что мы приближаемся, пока еще не все, я могу заставить их разойтись, но проблема, в которой мне нужно, чтобы обе группы суммировались в том же ряду, что сложно, потому что у меня также есть несколько ВЛЕВОГО ВНЕШНЕГО СОЕДИНЕНИЯ

выглядит Тайлера, как это может работать тоже, так что я пытаюсь хэш что из реального быстро

Ален, кажется, путь, но я должен Твик это немного более

ответ

4

может быть, я не понимания сложность того, что вы просите, но ... разве это не должно быть?

SELECT groupname, SUM(value) 
FROM items 
WHERE groupname IN ('a', 'b') 
GROUP BY groupname 

И если вы не заботитесь, какой из или б пункта принадлежит, то это будет делать:

SELECT SUM(value) 
FROM items 
WHERE groupname IN ('a', 'b') 
0

Вы хотите что-то вроде

SELECT column,SUM(column) FROM table GROUP BY column 
0

Это (Тайлер ответ), что означал этот вопрос, или просто это;

SELECT sum(item), groupingField FROM someTable GROUP BY groupingField 

или даже:

SELECT count(*), item FROM someTable GROUP BY item 

, который даст результаты, как это:

sum(item) |  groupingField 
-------------+----------------------- 
71   |   A 
82   |   B 

Спрашивающий, возможно, вы могли бы уточнить, какие именно вы имели в виду, или если я упрощаю?

0

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

SELECT B.[Group], COUNT(*) AS GroupCount 
FROM Table1 A 
LEFT JOIN Table2 B ON B.ItemType=A.ItemType 
GROUP BY B.[Group] 
Смежные вопросы