SQL Server通过分组选择

时间:2013-03-25 06:33:13

标签: sql sql-server grouping

表1

csstatus

csid status
122  defaulter
123  regular
124  registery
125  defaulter

表2

csplotdetials

csid plotsize
122  50
123  25
124  30
125  25

qunery结果

Status     totalplotsize

defaulter  75
regular    25
....

我怎么能做到这两个表没有关系,他们与另一个表有关系

3 个答案:

答案 0 :(得分:1)

SELECT status, sum(plotsize) as totalplotsize 
FROM csstatus cs 
INNER JOIN csplotdetials cp ON cs.csid = cp.csid 
GROUP BY status

答案 1 :(得分:0)

我必须在这里遗漏一些东西,因为看起来我可以推断出两个表之间的关系(在csid列上)以产生你想要的结果:

SELECT csstatus.status AS Status, SUM(csplotdetials.plotsize) AS totalplotsize
FROM csplotdetials
INNER JOIN csstatus ON csplotdetials.csid = csstatus.csid
GROUP BY csstatus.status

SQL Fiddle example

答案 2 :(得分:0)

我假设表格是通过两个表格中的csID coluymn链接的。

SELECT  a.csID, a.status, SUM(b.plotsize) totalPlotSize
FROM    ccstatus a
        INNER JOIN csplotdetails b
            On a.csID = b.csID
GROUP   BY a.csID, a.status

要进一步了解联接,请访问以下链接: