sql 질문입니다..
본문
$sql = "SELECT
wr_subject
,wr_name
,wr_2
,wr_7
,wr_datetime
,wr_1
,wr_5
FROM
g5_write_application
WHERE
1=1
".$where."
ORDER BY wr_id DESC";
$rows = sql_query($sql);
$rows = sql_fetch_array($rows);
여기서 $rows를 array로 뽑아야하는데 error_log 를찍어보니까 json 형태로 나오는것 같아요
index 값이 있는 array로 뽑으려면 어떻게 해야하나요? ㅠㅠ
pdo에서는 fetch_all 하면되던데
헷갈리네요.. 도움좀 부탁드립니다.
!-->답변 3
$rows = sql_query($sql);
while($row=sql_fetch_array($rows)) $list[]=$row;
print_r($list); //<---> $list[0][wr_subject], $list[1][wr_subject]~~~
$result = sql_query($sql);
while ($row = sql_fetch_array($result)) {
echo $row['wr_name'];
echo ".";
echo $row['wr_2'];
echo "<br>";
}
// 결과 레코드가 하나라면..
$row = sql_fetch($sql);
echo $row['wr_name'];
echo $row['wr_2'];
sql_fetch_array 와 함께 sql_fetch_assoc 도 추천합니다.
sql_fetch_array는 sql_fetch_assoc보다 성능이 떨어집니다.
예로 약 4만개의 레코드수에 관해서
mysql_fetch_array는 6초 정도 걸리지만
mysql_fetch_assoc는 3초미만걸립니다.
때문에 속도를 중시하신다면 sql_fetch_assoc를 사용할것을 추천합니다.
아래에 sql_fetch_assoc사용방법을 적습니다.
$result = mysql_query("SELECT * FROM table;") or die(mysql_error());
for($i = 0; $array[$i] = mysql_fetch_assoc($result); $i++) ;
array_pop($array); // 마지막에 빈값이 들어가기때문에 삭제.
이것이 속도적 측면에서 더 좋습니다.
답변을 작성하시기 전에 로그인 해주세요.