2012-11-12 4 views
0

함께이 쿼리를 결혼하는 가장 좋은 방법은 무엇입니까? 실제 데이터가없는가장 좋은 방법은 함께

+2

좀 더 구체적으로해야을, 당신은 UNION을 사용하거나 – jcho360

+0

가'USER' 당신의 테이블 중 하나입니다 가입 할 수 있습니까? 그것은 MySQL의 예약 키워드입니다. – sp00m

답변

0

는 조금 어려울 수도 있지만 나의 제안은 다음과 같다 : 내가 절에 의해 그룹과 몇 가지 문제가있을 수 있습니다 해당 테이블에서 reoccurances 잘 모르는 것 같아요 이후

SELECT apvr.LIMIT, apvr.APPROVER_ID, usr.IS_ACTIVE, usr.USER_FULL_NAME, count(*) as numOfApprovals, max(appd.approval_date) as lastApprovalDate 
FROM APPROVERS apvr 
JOIN USER usr ON apvr.APPROVER_ID = usr.ID 
JOIN IM_APPROVAL_DETAIL appd ON usr.ID = appd.APPROVER_ID 
GROUP By apvr.Approver_ID; 

을 . 그래서 대안 하위 선택 사용하는 것입니다 :

SELECT apvr.LIMIT, apvr.APPROVER_ID, usr.IS_ACTIVE, usr.USER_FULL_NAME, appd.numOfApprovals, appd.lastApprovalDate 
FROM APPROVERS apvr 
JOIN USER usr ON apvr.APPROVER_ID = usr.ID 
JOIN IM_APPROVAL_DETAIL appd 
JOIN (
    SELECT approver_id id, count(*) numOfApprovals, max(approval_date) lastApprovalDate 
    FROM im_approval_detail 
    GROUP by id) appd 
ON appd.id = usr.ID