php에서의 mysql 멀티 쿼리
페이지 정보
작성자 서방님 댓글 0건 조회 63회 작성일 12-07-17 18:26본문
mysql에서 사용하는 내부변수는 php에서 한 커넥션에서만 유효하다.
따라서 그냥 query를 날리면 다음 query에서는 내부변수가 초기화 되어 사용할 수 없다.
이를 위해서 mysql_unbuffered_query 함수를 사용한다.
// MySQL 내부변수를 초기화 시킨다. $strQuery = 'set @nCnt = 0;'; // 질의 결과행을 버퍼링 하지 않는 mysql_unbuffered_query로 질의 한다. mysql_unbuffered_query($strQuery, $rConn); // 변수에 값을 넣는다. $strQuery = 'select @nCnt:=count(fieldname) from tablename;'; // 질의 결과행을 버퍼링 하지 않는 mysql_unbuffered_query로 질의 한다. mysql_unbuffered_query($strQuery, $rConn); // 변수에 설정된 값을 이용해 질의 한다. $strQuery = 'SELECT ROUND((count(fieldname) / @nCnt) * 100, 3) AS percent FROM tablename GROUP By fieldtype;'; // 결과를 출력한다. $rRes = mysql_query($strQuery, $rConn); while($arrTest = mysql_fetch_assoc($rRes)) { var_dump($arrTest); } mysql_free_result($rRes); |
출처 : http://www.lovelgw.com/Blog/entry/multiquery<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
댓글목록
등록된 댓글이 없습니다.