根据类型返回项目总和

时间:2020-03-05 18:43:57  来源:igfitidea点击:

我需要总结一个字段,让我们说出命名项
但是,该字段可以是组a或者b的一部分
最后,我需要汇总组a和组b的所有项目

当我说成组时,我的意思是说另一个表有左外联接,前一个表具有该项的类型,而被联接的那个表则具有为此项类型分配的组

抱歉,我对sql有点陌生,我将尝试一下我们给我的反馈

好的,我觉得我们还差得很近,我可以将它们分开,但是我需要两个组在同一行上求和,这很困难,因为我还涉及多个LEFT OUTER JOIN

泰勒(Tyler)看起来也可能起作用,所以我试图将其快速地算出来

阿兰的似乎是要走的路,但我还得再等一下

解决方案

回答

也许我不了解我们要问的问题的复杂性,但是...不应该这样做吗?

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

并且,如果我们不在乎该项目属于a或者b,则可以:

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

回答

你想要类似的东西

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

回答

是这个问题(泰勒的回答)是什么意思,或者仅仅是这个?

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

甚至:

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

会产生如下结果:

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

发问者,也许我们可​​以澄清意思,或者我是否过于简化?

回答

试试这个:

SELECT B.[Group], COUNT(*) AS GroupCount
FROM Table1 A
LEFT JOIN Table2 B ON B.ItemType=A.ItemType
GROUP BY B.[Group]