>

단일 절차 코드에 대해 4 개월 이상 청구 한 회원을 식별하려고합니다. 아래는 내가 시도한 SQL 코드입니다. 그것이 맞는지 잘 모르겠습니다.

+-------------+---------------+-----------+------------+
| ServiceDate | ProcedureCode | MemberId  | Claim_Nbr  |
+-------------+---------------+-----------+------------+
| 2018-01-15  | K800          | 364882903 | 1600235465 |
+-------------+---------------+-----------+------------+
| 2018-02-15  | K800          | 364882903 | 1607478399 |
+-------------+---------------+-----------+------------+
| 2018-01-15  | K800          | 388299399 | 4589992948 |
+-------------+---------------+-----------+------------+
| 2018-03-15  | K800          | 364882903 | 1600489300 |
+-------------+---------------+-----------+------------+
| 2018-04-15  | K800          | 364882903 | 1600388289 |
+-------------+---------------+-----------+------------+
| 2018-05-15  | K800          | 364882903 | 1600028848 |
+-------------+---------------+-----------+------------+
| 2018-06-15  | K800          | 364882903 | 1600894889 |
+-------------+---------------+-----------+------------+
| 2018-07-15  | K800          | 364882903 | 1600023884 |
+-------------+---------------+-----------+------------+
| 2018-07-15  | K800          | 364882903 | 1600934888 |
+-------------+---------------+-----------+------------+
| 2018-02-15  | K800          | 388299399 | 3774999999 |
+-------------+---------------+-----------+------------+
| 2018-03-15  | K800          | 388299399 | 9498378489 |
+-------------+---------------+-----------+------------+

SQL 코드

SELECT ProcedureCode, MemberId FROM CLAIMS
GROUP BY ProcedureCode
HAVING SUM(Month(ServiceDate))>4

SQL 예

  • 답변 # 1

    4 개월 이상 절차 코드가 나타나는 회원을 원하면 count(distinct) 를 사용할 수 있습니다 :

    select memberId, procedureCode
    from claims
    group by memberId, procedureCode
    having count(distinct year(ServiceDate) * 100 + month(ServiceDate)) > 4;
    
    

관련 자료

  • 이전 parameters - 프롬프트로 전역 변수의 이름을 어떻게 설정합니까?
  • 다음 javascript - 서버에서 호스팅되는 특정 이미지 파일 크기를 가져옵니다