웹마스터 팁

뭐 별루 팁도 아니지만
이번에 이것땜에 고생을 많이 해서 혹시 모르는 님들도 있을까하는 노친네의 염려 ㅡ,.ㅡ;;
제가 하고 싶은 말은
mysql_fetch_row
mysql_fetch_array
mysql_fetch_object
첨 PHP를 시작할때 부터 저 나름대로 코드의 가독성, 디버깅의 편리성등의 이유료
mysql_fetch_array를 줄곳 써왔는데
요번에 어느 사이트를 제작하다 보니 실행속도의 문제등으로 코드, SQL 쿼리 를 정리하는 도중
요넘들의 속도차이를 테스트 하다보니 놀라운 점들이 많더라구요.
먼저 결론부터 말씀드리자면
mysql_fetch_array 가 가장 늦습니다.
mysql_fetch_assoc 가 그다음
그리고 mysql_fetch_object와 mysql_fetch_row는 비슷한데 mysql_fetch_row가 더 빠르구요
그런데 사실 mysql_fetch_array 와 mysql_fetch_row 는 많게는 2초 까지 차이가 나더군요.
--------------------------------------------------------------------------------------------------------SQL QUERY
SELECT
  sg.id, sg.pics, sg.mov_file, sg.sell_price, sg.buy_year, sg.sell_type, sg.color, sg.trm,
  sg.buy_month, sg.mileage, sg.zZim,sg.hit, sg.is_del,
  cm.vender, cm.k_class, cm.car_name, m.mem_post,m.mem_addr, m.mem_ID, cv.k_vender
FROM  car_vender AS cv USE INDEX (is_import, e_vender)
LEFT JOIN car_model cm USE INDEX (id, vender, e_class, car_type) ON (cv.e_vender = cm.vender)
LEFT JOIN sell_goods  AS sg USE INDEX (id, rel_id, rel_ref, is_del) ON (sg.rel_ref = cm.id)
LEFT JOIN member AS m USE INDEX (is_del, mem_ID_2) ON (sg.rel_id = m.mem_ID)
WHERE (sg.is_del <> 'y') AND (m.is_del <> 'y')
--------------------------------------------------------------------------------------------------------------------
여기에 약간의 where 조건이 추가 되지만 인덱스는 여러번의 테스트를 거쳐서 제대루 걸렸다고? ,ㅡ,.ㅡ;; 생각됩니다.
여기서 한가지 충고를 하고 싶은 말씀은 꼭 mysql_fetch_array를 쓰시려는 분들은 mysql_fetch_assoc 를 쓰라고 말씀드리고 싶습니다.
똑같은 방법으로 구현할 수 있는 방면에 속도는 훨씬 빠르더 군요....
다만 mysql_fetch_assoc는 $r[0]과 같은 형식은 사용할 수 없더군요. $r[0]의 형식을 쓰시려면 mysql_fetch_row를 쓰시면 되구요.
이상 좋은 팁이 되었으면 좋겠습니다.
그럼 좋은 하루 되세요^^&
참 데이터는 4만건 정도에서 테스트 되었습니다.
제목 글쓴이 날짜
PHP 혼자 공부하기 - 8 :: 시간다루기 [18] 행복한고니 2003.04.13
PHP 혼자 공부하기 - 9 :: 정규식 함수 [3] 행복한고니 2003.04.14
PHP 혼자 공부하기 - 10 :: 정규식 패턴 문법 [3] 행복한고니 2003.04.15
PHP 혼자 공부하기 - 11 :: 정규식 실전예제 [9] file 행복한고니 2003.04.16
[mics'php] 1. PHP란? [8] TheMics 2003.04.16
[mics'php] 2. PHP 사용 시스템 구축하기 [3] file TheMics 2003.04.17
데이터베이스, PHP를 만나면「알짜 사이트로 부활!」 [1] .maya 2003.04.18
PHP 혼자 공부하기 - 12 :: SQL문 [6] file 행복한고니 2003.04.20
노프레임+프레임없이 접근막기+게시물 링크하기 [3] teslaMINT 2003.04.20
유용한 일반 함수 모음;ㅁ; [11] TheMics 2003.04.23
군대간 친구 남은날짜 계산하기 [6] xacdo 2003.04.27
ID3v1태그 읽는 함수입니다. [4] 김승태 2003.04.27
if 시리즈 1탄! [15] 씨파개 2003.04.28
PHP 확장 함수를 이용한 exif 정보 출력 [1] file NoSoRi 2003.04.30
if 시리즈 2탄.. ㅡㅡ;; [9] 씨파개 2003.05.05
mysql_fetch_row n mysql_fetch_array n mysql_fetch_object [4] sMokaHallo 2003.05.06
이미지 전용 파일업로드시의 확장자 체크시.. [4] 특급잠수부 2003.05.07
PHP+MSSQL?(수정판) [11] 씨파개 2003.05.10
세션파일 크기/만들어진 시간체크해서 정해진 시간이후엔 파일 지우기?;; (라고 써야되낭? ;;) [6] 다오케이 2003.05.12
none 과 null 처리 문제 해결법 [5] 허현승 2003.05.12