0

私は非常に単純なSQLを持っています-

SELECT      QUEUE,
            COUNT (QUEUE) AS 'TOTAL'
FROM        MY_TABLE
GROUP BY    QUEUE

たとえば、10行のデータになります-

First Queue    15  
Second Queue   23  
Third Queue    48  
Fourth Queue   12  
etc

私がする必要があるのは、FirstQueueの結果をSecondQueueの結果に追加してから、SecondQueueの名前をNewSecond Queueに変更することです。したがって、最終的には-

New Second Queue   38  
Third Queue        48  
Fourth Queue       12  
etc

私は長い間SQLを書いていませんでしたが、これを解決するために何時間も費やして成功しませんでした。

4

2 に答える 2

1
select queue,
       count(*) as total
from
  (
  select case queue
           when 'First Queue' then 'New Second Queue'
           when 'Second Queue' then 'New Second Queue'
           else queue
         end as queue
  from YourTable
  ) as Q
group by queue      
于 2012-08-14T08:53:04.817 に答える
0

これを試して:

with cte as(
SELECT      QUEUE,
            COUNT (QUEUE) AS 'TOTAL',
            ROW_NUMBER() over(order by QUEUE) as rownum
FROM        MY_TABLE
GROUP BY    QUEUE)
select 'New '+QUEUE [QUEUE],TOTAL+(select TOTAL from cte where rownum=1) [TOTAL]
 from cte where rownum=2
 union all
 select QUEUE,TOTAL from cte where rownum>2
于 2012-08-14T08:50:25.093 に答える