2017-02-26 3 views
0

두 개의 테이블이 있다고 가정 해 보겠습니다. 나는 지난 30 일 이내에 완료된 모든 것들에 대한 NUMBERONE 및 NUMBERONE- NUMBERTWO 개 사이의 90 번째 백분위 수 차이를 계산 어떻게 도시 'A'와 'B'의 각각에 대해 SQL에서 백분위 수 차이를 계산하는 방법은 무엇입니까?

Table 1 - T 
Columns 
City ID(Foreign keyed to C.cityid) 
Completed (yes or no) 
NumberOne (integer) 
NumberTwo (integer) 
Date (timestamp with timezone) 

Table 2 - C 
City ID (integer) 
City Name (string) 

.

는 여기에 지금까지이 작업은 다음과 같습니다

SELECT 
    100.0*(T.NumberOne - T.NumberTwo)/T.NumberTwo As PercentDiff 
FROM T 
JOIN C ON CityID 

내가 SQL 새로운이 모두를위한 하나 개의 쿼리를 작성하는 방법을 모르겠어요. 하위 쿼리를 사용해야합니까?

+3

당신이 사용하는 데이터베이스와 질문에 태그를하시기 바랍니다. –

답변

1

시도 뭔가 :

SELECT 
    100.0*(t.NumberOne - t.NumberTwo)/t.NumberTwo As PercentDiff 
from T t 
inner join C c 
on t.[City ID] = c.[City ID] 
where c.Name in ('A','B') 
and t.Completed = 'yes' 
and t.Date > DATEADD(day, -30, GETDATE()) 
+0

90 백분위 수라면 100.0을 90.0으로 바꿔야합니까? 그냥 두 번째 의견을 원해 ... 당신의 답변 주셔서 감사합니다! – pr338

0

시도 ON CITYID = CITYID in 문은 부울식이 필요합니다. 이 같은

관련 문제