2026, 새로운 도약을 시작합니다.

멤버디비에서 특정추천인을 골라낸후, 다른 데이터 디비에서 특정추천인들을 골라낸 멤버디비만을 추출 채택완료

안녕하세요

member 디비와 item_view 디비의 멤버필드는 동일하나, 

추천인이 들어있는 필드는 member 디비에만 있습니다.

1. "member" 디비의 "recommend" 필드에서 특정 추천인으로 되어 있는 멤버만을 골라낸후

2. "item_view"디비의 "wr_1"필드(멤버)에서 특정 추천인과 동일한 레코드만을 추출한후 보여줄려고 합니다.


 

어떻게 해야 하는지? 고수분의 한수를 부탁합니다.

먼저 도움에 감사드리며, 즐거운 하루되세요 ^&^

답변 4개

채택된 답변
+20 포인트

$temp_recommend = $member['mb_id'];

$sql = "
  select *
    from g5_write_item_view
   where wr_1 in (select mb_id from g4_member where mb_recommend = '$temp_recommend')
     and wr_8 between '$today' and '$todays'
";

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

감사합니다 즐거운 하루되세요 ^0^

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

먼저, 다시 한번 도움에 감사드립니다.

에러가 발생하여...

위의 내용을 바탕으로 아래와 같이 작성하였습니다.

멤버들이 로그인하면 

멤버 == $member[mb_id] 가 되므로, 아래와 같이 작성하여

결과를 보았을때, 멤버가 추천인일때 그와 관련된 디비가 보여야 하는데,

어떤 멤버가 들어가도 내용이 같은 결과가 보입니다. 뭐가 잘못되엇을까요??

   $temp_recommend =='".$member[mb_id]."' ;

   $temp_recommend ='".$member[mb_id]."' ;

위 변수부분을 == 으로 작성하나, = 으로 작성하나 결과는 같이 보이고 있습니다.


  $sql =" SELECT
                  g4_write_item_view.*,
                  g4_member.*
                    FROM g4_write_item_view 
                  INNER JOIN g4_member
                ON g4_write_item_view.wr_1 = g4_member.mb_id 
                where g4_member.mb_recommend = '".$temp_recommend."'
          and  wr_8 between '".$todays."' and '".$totodays."' 
          GROUP BY wr_1
                 " ;

로그인 후 평가할 수 있습니다

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

select *

  from item_view 

 where wr_1 in (select mb_id from member where recommend = 'aaa')

로그인 후 평가할 수 있습니다

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

member필드가 동일하다면 join 을 이용해 추출 가능할거 같습니다.

예를 들어

select A.member, B.wr_1, A.recommend

from member as A

join item_view as B on B.wr_1=A.member;

이런 방식으로요.

자세한 건 join 으로 검색해 보시면 더 많은 정보를 얻으실 수 있을겁니다.

만약 조건식이 필요하다면 wherer 절을 추가하셔서 검색하시면 될거 같습니다.

추가...

추천인을 찾는거면 item_view 의 wr_1 에는 추천인이 들어가는지 아니면 회원아이디가 들어가는지에 따라 쿼리가 변경될 겁니다. 예를들어

on B.wr_1=A.recommend 이런씩으로요.

로그인 후 평가할 수 있습니다

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

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

로그인
🐛 버그신고