테스트 사이트 - 개발 중인 베타 버전입니다

A 테이블 셀렉트 후 mb_id값 비교해서 다시 B테이블 셀렉트 하는 방법좀요 ㅠ 채택완료

요고꽁 4년 전 조회 3,148

$sql_choice = " select * from g5_write_choice where wr_1 = '3' "; $result_choice = sql_query($sql_choice);  $row_choice=sql_fetch_array($result_choice);

>>> g5_write_choice 테이블에서 wr_1 값이 3인거만 추출합니다.

 

 

$sql = " select * from g5_write_plana_refund2 where mb_id = '$row_choice[mb_id]' and wr_datetime BETWEEN date('2021-07-31 00:00:00') and date('2021-08-13 23:59:59')+1 and wr_10 = '1' "; $result = sql_query($sql); 

>>> g5_write_choice 테이블에서 추출한값을 mb_id 아이디를 비교해서 동일한 아이디 있는거만 나오게 합니다.

 

for ($i=0; $row=sql_fetch_array($result); $i++) { $row[mb_id] }

>>>> 이렇게 했더니 값이 하나만 나옵니다. ㅠㅠ 테이블 값 열어보면 수십개 값이 있는데 말이죠 ㅠㅠ

 

 

왜 그럴가요?

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

답변 3개

채택된 답변
+20 포인트
플래토
4년 전

</p>

<p> </p>

<p>$sql_choice = " select distinct mb_id from g5_write_choice where wr_1 = '3' ";

$result_choice = sql_query($sql_choice); </p>

<p>wihle ($row_choice=sql_fetch_array($result_choice)) {</p>

<p>    $sql = " select * from g5_write_plana_refund2</p>

<p>                where mb_id = '{$row_choice['mb_id']}'</p>

<p>                    and wr_datetime BETWEEN date('2021-07-31 00:00:00')</p>

<p>                    and date('2021-08-13 23:59:59')+1 and wr_10 = '1' ";

    $result = sql_query($sql); </p>

<p>    for ($i=0; $row=sql_fetch_array($result); $i++) {

        echo $row['mb_id'];</p>

<p>        

    }</p>

<p>}</p>

<p>

 

g5_write_choice 테이블에서 mb_id 기준으로 중복제거해서 

mb_id에 해당되는 값들을 기준으로  g5_write_plana_refund2 에서

추출해서 처리를 하면됩니다.

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

답변에 대한 댓글 1개

요고꽁
4년 전
돌리니까 에러가 나네욤 ㅠㅠ

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

4년 전

 date('2021-08-13 23:59:59')+1<--- date는 무엇이며 +1은 무엇인가요?

다음처럼 해보세요

 

$rowk = sql_fetch(" select group_concat(DISTINCT mb_id) as mbid from g5_write_choice where wr_1 = '3' "); $idStr = "'".str_replace(',', "','", $rowk['mbid'])."'";

 

$date1 = ''2021-07-31 00:00:00'; $date2 = "2021-08-13 23:59:59"; $result = sql_query(" select * from g5_write_plana_refund2 where mb_id IN($idStr) and wr_datetime BETWEEN $date1 and $date2 and wr_10 = '1' ");  for ($i=0; $row=sql_fetch_array($result); $i++) { echo $row[mb_id]; }

 

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

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

$row, $result 변수가 중복되는 건 아닐까요?

소스 전체를 올려 보세요.

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

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

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

로그인