채택완료

union 방법 좀 알려주세요

Copy
$sql = "
        SELECT a.mb_name AS lev1, b.mb_name as lev2, c.mb_name as lev3, d.mb_name as lev4, e.mb_name as lev5, f.mb_name as lev6, g.mb_name as lev7, h.mb_name as lev7, i.mb_name as lev8
        FROM {$g5['member_table']} AS a
        LEFT JOIN {$g5['member_table']} AS b ON b.mb_8 = a.mb_name
        LEFT JOIN {$g5['member_table']} AS c ON c.mb_8 = b.mb_name
        LEFT JOIN {$g5['member_table']} AS d ON d.mb_8 = c.mb_name
        LEFT JOIN {$g5['member_table']} AS e ON e.mb_8 = d.mb_name
        LEFT JOIN {$g5['member_table']} AS f ON f.mb_8 = e.mb_name
        LEFT JOIN {$g5['member_table']} AS g ON g.mb_8 = f.mb_name
        LEFT JOIN {$g5['member_table']} AS h ON h.mb_8 = g.mb_name
        LEFT JOIN {$g5['member_table']} AS i ON i.mb_8 = h.mb_name
        WHERE a.mb_name = '홍길동'
    ";
    $result = sql_query($sql, true);
    while ($row = sql_fetch_array($result)) {
            $row = array_filter($row);
     print_r ($row);
     echo "<br>";
    }

결과값

Copy
Array ( [lev1] => 홍길동 [lev2] => 고은경1 )
Array ( [lev1] => 홍길동 [lev2] => 백의현 [lev3] => 김채안 )
Array ( [lev1] => 홍길동 [lev2] => 김미자 [lev3] => 김옥진 )
Array ( [lev1] => 홍길동 [lev2] => 김미자 [lev3] => 서국영 [lev4] => 김태숙 )
Array ( [lev1] => 홍길동 [lev2] => 김미자 [lev3] => 민윤지 [lev4] => 김임두 [lev5] => 양영란 )
Array ( [lev1] => 홍길동 [lev2] => 김미자 [lev3] => 민윤지 [lev4] => 김평임 )
Array ( [lev1] => 홍길동 [lev2] => 김미자 [lev3] => 민윤지 [lev4] => 홍정애 )
Array ( [lev1] => 홍길동 [lev2] => 김미자 [lev3] => 하영홍 )
Array ( [lev1] => 홍길동 [lev2] => 김미자 [lev3] => 이유라 [lev4] => 김규림2 [lev5] => 사미숙 [lev6] => 문윤희 )
Array ( [lev1] => 홍길동 [lev2] => 김미자 [lev3] => 이유라 [lev4] => 김규림2 [lev5] => 김시경 )
Array ( [lev1] => 홍길동 [lev2] => 김미자 [lev3] => 이유라 [lev4] => 김혜숙1 )
Array ( [lev1] => 홍길동 [lev2] => 김미자 [lev3] => 이유라 [lev4] => 서복순 )
Array ( [lev1] => 홍길동 [lev2] => 김미자 [lev3] => 이유라 [lev4] => 박정애 )
Array ( [lev1] => 홍길동 [lev2] => 김미자 [lev3] => 전미희 [lev4] => 조애경 )
Array ( [lev1] => 홍길동 [lev2] => 김미자 [lev3] => 전미희 [lev4] => 윤기순 )
Array ( [lev1] => 홍길동 [lev2] => 김미자 [lev3] => 전미희 [lev4] => 조금란 [lev5] => 김진환 )

원하는 값

Copy
Array ( [lev1] => 홍길동 [lev2] => 고은경1 )
Array ( [lev1] =>  [lev2] => 백의현 [lev3] => 김채안 )
Array ( [lev1] =>  [lev2] => 김미자 [lev3] => 김옥진 )
Array ( [lev1] =>  [lev2] => [lev3] => 서국영 [lev4] => 김태숙 )
Array ( [lev1] =>  [lev2] => [lev3] => 민윤지 [lev4] => 김임두 [lev5] => 양영란 )
Array ( [lev1] =>  [lev2] => [lev3] => [lev4] => 김평임 )

결과값에서 중복을 제외시키니.. 쿼리문에서 계산해야 하는 값이 정확하지가 않아 

쿼리문에서 중복을 제외 시켜야 합니다.

union으로 중복값을 제외시킨다는건 알았는데

저 쿼리문을 어떻게 union을 해야 중복값이 제외되는지 잘 모르겠습니다.

|

답변 1개 / 댓글 1개

채택된 답변
+20 포인트
2022-04-05 (화) 16:10:43

유니온은 테이블 필드 같을때만 가능하지 않나요?

저위에 있는건 레프트 조인인데

답변에 대한 댓글 1개

감사합니다.

답변을 작성하려면 로그인이 필요합니다.