메인1 서브N 구조 테이블 조인 범위 줄이기?? 0 4 757

by 메시 [SQL Query] 조인 [2019.10.23 13:01:41]


테이블 2개가 있습니다.

메인 테이블A - 1개 데이터

서브 테이블B - N개 데이터

데이터 구조가 메인테이블 1개에

서브테이블에는 N개 구조 입니다.

메인테이블에는 최종 상태값이 없습니다.

서브테이블에 N개 모두 complete 상태가 되어야 최종 메인 테이블 완료가 되었다고 보는데요

결과적으로 서브테이블 N개 중에

가장 마지막 로우가 complete 되면

최종 완료 되었다고 보고 N개중에 마지막

로우 상태값만 체크해서 메인 완료 여부 체크하면 될것 같은데 서브 테이블 마지막 로우구분이 명확하지 않아서 고민이 됩니다.

이런 구조 테이블 최종로우 결과상태 체크해 메인서브 조인해서 데이터 가려오려고 하는데요요어떤식으로 접근을 하면 좋을까요?

 

 

 

 

 

by 신이만든지기 [2019.10.23 13:55:12]

접근방식을 달리해서, 메인테이블에 상태값 컬럼을 추가하고 마지막 ROW를 추가하는 경우 메인테이블의 상태값을 COMPLETE 상태로 업데이트를 하면 되지 않을 까요?

 


by 메시 [2019.10.23 14:31:40]

컬럼이 있으면 깔끔하긴 한데요.

지금 구조에서 컬럼 추가는 힘들고

현 상태에서 자료를 추출해야할것 같습니다.ㅠ

 


by 임상준 [2019.10.23 14:36:44]

메인 테이블의 특정 대상에 대해서 서브테이블의 완료를 조회하는 형태인가요 아니면 그냥 처음부터 서브테이블을 보고 메인 어떤게 완료인지를 체크하나요?


by 꼬랑지 [2019.10.23 14:43:07]

서브테이블에 있는 복수개의 자식 로우중 최종적인 로우를 구분하기 힘든 상황이라구요?

그렇더라도 자식 로우의 상태 칼럼값들이 최종적인 값들로 변경되었다는 건 판단할 수 있는 상황이지요?

그렇다면 아래 쿼리를 날려 A 값이 나온다면 모든 자식 로우들의 상태가 완료된 것으로 파악할 수 있을 것 같은데요?

SELECT CASE WHEN '최종상태값' = ALL(MIN(상태칼럼),MAX(상태칼럼) THEN 'A' ELSE 'B' END

FROM 테이블 

WHERE ~~~

GROUP BY ~~~

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입