2009-12-21 4 views
1

나는 열이 pricedate 인 테이블을 오름차순으로 정렬했습니다. 나는 이것을 반환 벡터 (return = price (i)/price (i- 1))에서 계산해야합니다. 시간이 시간 ... 하나 개의 레코드는 다음 9h35에서 다음, 9h34에서 9h40 등이 될 수 있다는 것을 의미하는 기반으로하지 않습니다Sql = 시계열로 리턴 벡터를 계산하는 방법은 무엇입니까?

나는 다음과 같은 항목을 발견

: 반환 된 데이터 의 결과를 계산하기위한 SQL 구문을하지만, 오라클에서는 하위 쿼리에서 주문을 사용할 수 없습니다. 제발 도와 주시겠습니까? i 열을 기준으로 정렬 된 세트로,

여기
select 
    price/(lag(price) over (order by i)) 
, ... 
from PriceHistory 

lag(price) over (order by i) 이전 행의 가격을 반환

+2

Iracema : 답변이 '완벽하게 작동'하면 계속 진행하고 답변을 수락하십시오. –

답변

6

오라클에서는 lag 분석 기능을 사용할 수 있습니다.

+0

Ok Andomar 완벽하게 작동했습니다. 감사합니다! – user235693

관련 문제