2016-12-05 81 views
-1

假设我有3列是这样的:SQL分组列

Status, QName, Item 
Broken, q1, i1 
Broken, q1, i2 
Broken, q1, i3 
Broken, q2, i4 
Broken, q3, i5 
Immediate,q1,i6 
Immediate,q2,i7 

我想这样的输出:

Status = Broken, No of queues = 3, total items = 5 
Status = Immediate, No of queues = 2, total items = 2 

我怎样才能在一个查询此输出?

+1

请分享你有什么到目前为止已经试过。 – jera

回答

1

您可以使用COUNT(DISTINCT)此:

Select Status, 
      Count(Distinct QName) As NoQueues, 
      Count(Distinct Item) As TotalItems 
From  YourTable 
Group By Status 
1

试试这个:

SELECT Status, 
     COUNT(DISTINCT QName) [No of queues], 
     COUNT(DISTINCT Item) [total items] 
FROM [YourTable] 
GROUP BY Status