두 개의 테이블을 참조했을 때는 출력을 어떻게 하나요?
본문
$SQL = "SELECT FREE.wr_2, FREE.wr_3, FREE.wr_1, FREE.wr_name, FREE.mb_id FROM g5_write_free AS FREE, g5_write_notice AS NOTICE
WHERE NOTICE.mb_id = FREE.mb_id AND NOTICE.wr_1 ='3' AND FREE.wr_10 = '1';";
$result = sql_query($sql);
$row = mysql_fetch_array($result);
<table>
<?php while($row){?>
<tr>
<td>
<?php echo $row[] ?>
</td>
<td>
<?php echo $row[] ?>
</td>
<td>
<?php echo $row[] ?>
</td>
</tr>
<?php }?>
</table>
위와 같이 sql문을 작성했을 때에는 php echo 부분을 어떻게 작성해야 하나요?
!-->답변 2
앞에 붙인 별칭을 빼고 입력하면 됩니다.
echo $row['wr_2'];
as 별칭을 붙여야합니다.
$SQL = "SELECT FREE.wr_1 as fwr_1, NOTICE.wr_1 as nwr_1 FROM g5_write_free AS FREE, g5_write_notice AS NOTICE
WHERE NOTICE.mb_id = FREE.mb_id AND NOTICE.wr_1 ='3' AND FREE.wr_10 = '1';";
이렇게 하시면
FREE.wr_1 = fwr_1
NOTICE.wr_1 = nwr_1
echo $row['fwr_1'];
echo $row['nwr_1'];
불러올수있습니다.
보통의 방법으로는 모든 컬럼을 가져온 후 원하는 컬럼만 as 별칭을 주는것이 더 효율적입니다.
$SQL = "SELECT *, FREE.wr_1 as fwr_1, NOTICE.wr_1 as nwr_1 FROM g5_write_free AS FREE, g5_write_notice AS NOTICE
WHERE NOTICE.mb_id = FREE.mb_id AND NOTICE.wr_1 ='3' AND FREE.wr_10 = '1';";
!-->!-->
답변을 작성하시기 전에 로그인 해주세요.