2017-12-15 29 views
-1

시작/끝과 끝일의 일일 차이를 계산하고 싶습니다. 나는 그들을 ID별로 그룹화해야한다는 것을 알고 있지만, 그 날의 차이점을 어떻게 수행해야할지 모르겠습니다. 나는 파이썬을 사용하여 이것에 대한 도움을 받았지만 SQL에서 로직을보고 싶다.그룹 별 및 일별 차이에 의한 sql 쿼리

Id Day Status 

111 1 Start 

111 5 End 

222 2 Begin 

222 7 End 

333 1 Start 

333 3 Begin 

333 7 End 

이상적인 결과는 다음과 같습니다

Id Day Status Length 

111 1 Start 4 

111 5 End 

222 2 Begin 5 

222 7 End 

333 1 Start 6 (since we Start on Day 1 and End on day 7) 

333 3 Begin 4 (since we Begin on Day 3 and End on day 7) 

333 7 End 

당신에게

답변

1

예 감사합니다. 당신은 다음과 같이 할 수있는 :

선택 a.Id, a.Day, a.Status는 왼쪽 a.id = b.id하고 표 1의 B에 참여하기 표 1에서 을 b.day-a.day. status! = 'end'및 b.status = 'end'