0
내가 ROW1 - ROW2로 범위를 계산할 범위 열을 얻기 위해 DB2 쿼리에 도움이 필요의 차이를 계산하는 방법인접 행
name,age,range
a,40,0
b,20,20
c,7,13
d,5,2
e,1,4
범위 열 계산
first value is 0
(40-20)
(20-7)
(7-5)
(5-1)
내가 ROW1 - ROW2로 범위를 계산할 범위 열을 얻기 위해 DB2 쿼리에 도움이 필요의 차이를 계산하는 방법인접 행
name,age,range
a,40,0
b,20,20
c,7,13
d,5,2
e,1,4
범위 열 계산
first value is 0
(40-20)
(20-7)
(7-5)
(5-1)
SELECT name,
age,
(lag(age, 1, age) over (order by age desc)) - age as agediff
FROM your_table
ORDER BY age desc
@ypercube : 감사합니다. 결정된. –
감사합니다. 그것은 작동한다. – Raj
같은 질문에 답변 : [SQL Server에서 ROW_NUMBER() 최적화] (http://stackoverflow.com/questions/2960104/optimizing-row-number-in-sql-server) 다양한 다른 방법으로 동일한 결과 달성 . –
@ypercube : 나는 창 함수의 값을 사용하여 결과 집합을 결합하는 것을 다루기 때문에 게시물이 여기 관련이 있다고 생각하지 않습니다. 게다가 성능은 구현에 따라 매우 다릅니다. –
@a_horse_with_no_name : 성능이 특정 구현에 동의합니다. 그래도'lag()'함수가 없으면'Row_Number()'윈도우 함수 (또는 자기 조인에 대한 다른 방법)를 사용하여 자체 조인이 필요합니다. –