2013-07-08 4 views
0

나는 Excel에서 "상을받는 사람"의 전체 파일, 그래서 같은 : 나는 "QlikView"라는 SQL 시각화 프로그램에 입력으로이 엑셀 테이블을 사용하고누적 SQL 표

Name  | Date  | Category 
John  May-1  Fishing 
Mary  May-2  Swimming 
Sue  Jun-6  Fishing 

. 위의 예는 매우 단순한 예이며 열의 이름이 다릅니다.

은 지금 누적 데이터

의 가상 테이블을 만들고 싶어
Category | Date  | Total Awards Given 
Fishing  May-1  1 
Fishing  Jun-6  2 
Swimming  May-2  1 

이미 질문을 참조 할 행복 할 것입니다,하지만 난 "유사한 질문"에 언어의 대부분에 익숙 해요 사이드 바.

감사합니다!

select category, 
     date, 
     count(*) over (partition by category) as total_awards, 
     count(*) over (partition by category order by date) as total_awards_so_far, 
from the_table 
order by category, date; 

Date은 (열에 대한 끔찍한 이름입니다) 데이터 형식 date이며, 따라서 적절하게 정렬 할 수 있다고 가정하면 SQL 솔루션을 요구하기 때문에

+5

입니까? – Woot4Moo

+2

또한 출력은 입력이 주어지면 의미가 없습니다. 누적 합계를 원하십니까? – Woot4Moo

+0

참고 : SQL에서는 "가상 테이블"= "보기"입니다. – RBarryYoung

답변

1

, 이것은 ANSI의 SQL입니다. 이 (ISO의 SQL)처럼

+0

실제로 "날짜"라고하지는 않습니다. 이것은 단순화 된 예입니다. "originalSubscriptionDate"는 진짜 - 여전히 나쁘지 않습니까? – RodericDay

+2

@RodericDay * originalSubscriptionDate *는 열 이름으로 적합합니다.) –

0

: 이것은 SQL 질문 또는 엑셀 질문

CREATE VIEW CumulativeAwards As 
    SELECT Category, "Date", COUNT(*) As "Total Awards Given" 
    FROM "Award Recipients" 
    GROUP BY Category, "Date"