내 질문의 제목이 무엇이 될지 잘 모르겠다.이 결과에서 SQL 쿼리를 작성하려면 어떻게해야합니까?
SQL 쿼리를 작성하려고합니다. 약국에서 상환해야하는 가입자의
예 : 약국에 갔는데 백신을 맞았지만 실수로 주머니에서 돈을 지불했습니다. 그래서 지금 약국은 저에게 그 금액을 변상해야합니다. 나는 같은 데이터가 있다고 가정하자 :
MemberId Name ServiceDate PresNumber PersonId ClaimId AdminFee(in $)
1 John 1/1/2011 123 345 456 0
1 John 1/21/2011 123 345 987 20
2 Mike 2/3/2011 234 567 342 0
2 Mike 2/25/2011 234 567 564 30
5 Linda 1/4/2011 432 543 575 0
5 Linda 4/6/2011 987 543 890 0
6 Sonia 2/6/2011 656 095 439 0
이 데이터은 상환하고있어 그 약국의 모든 구성원이하지 않은 보여줍니다.
AdminFee가 0 인 회원을 찾아야하지만 동일한 멤버 인 PresNumber, ServiceDate가 원본 레코드의 30 일 이내에있는 동일한 PersonId에 대해 다른 레코드를 확인해야합니다.
다른 레코드가이 기준을 충족하고 AdminFee 필드에 값 (0이 아님)이 포함되어 있으면 해당 사람이 이미 환불되었음을 의미합니다. 따라서 데이터를 통해 John과 Mike는 이미 상환되었고 Linda와 Sonia는 상환해야합니다.
아무에게도 SQL 쿼리 작성 방법을 알려 줄 수 있습니까?
참고 : 원래 놓친 동일한 * * 처방전 번호에 대한 이전 환급을 요구한다는 요구 사항을 반영하기 위해이를 편집했습니다. –