>데이터 베이스 >MySQL 튜토리얼 >PHP에서 여러 MySQL 쿼리를 동시에 실행하고 별도의 결과 세트를 처리하려면 어떻게 해야 합니까?

PHP에서 여러 MySQL 쿼리를 동시에 실행하고 별도의 결과 세트를 처리하려면 어떻게 해야 합니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-18 12:01:11386검색

How Can I Execute Multiple MySQL Queries Simultaneously in PHP and Handle Separate Result Sets?

PHP/MySQL에서 여러 개의 MySQL 쿼리를 하나로 실행하기

소개

여러 SQL 쿼리 실행하기 쿼리는 동시에 데이터베이스 처리 효율성을 향상시킬 수 있습니다. 이 문서에서는 두 개의 MySQL 쿼리를 PHP/MySQL에서 하나로 실행하는 방법을 살펴보고 별도의 결과 집합을 효과적으로 처리해야 하는 필요성을 해결합니다.

문제 정의

다음 두 가지를 고려하세요. MySQL 쿼리:

SELECT SQL_CALC_FOUND_ROWS Id, Name FROM my_table WHERE Name LIKE '%prashant%' LIMIT 0, 10;
SELECT FOUND_ROWS();

첫 번째 쿼리는 my_table에서 데이터를 가져오고 두 번째 쿼리는 총계를 계산합니다.

PHP 실행

일반적으로 이러한 쿼리는 mysql_query() 함수를 사용하여 별도로 실행됩니다. 그러나 이 접근 방식은 개별 결과 집합을 별도로 처리하는 방법을 제공하지 않습니다.

$result1 = mysql_query($query1);
$result2 = mysql_query($query2);

다중 쿼리 실행

두 쿼리를 한 번에 실행하려면, mysqli_multi_query() 함수를 사용할 수 있습니다. 이 함수를 사용하면 여러 쿼리를 순차적으로 실행할 수 있습니다:

$mysqli = new mysqli('hostname', 'username', 'password', 'database_name');

mysqli_multi_query($mysqli, $query1 . ';' . $query2);

결과 세트 처리

쿼리를 실행한 후 mysqli_store_result()를 사용하여 결과 세트를 검색할 수 있습니다. 함수:

$result1 = $mysqli->store_result();
$result2 = $mysqli->store_result();

이제 다음과 유사하게 각 결과 세트를 개별적으로 반복할 수 있습니다. 데이터 세트를 사용하여 ASP.NET에서 처리하는 방법:

while ($row1 = $result1->fetch_assoc()) {
    // Process row data from the first query
}

while ($row2 = $result2->fetch_assoc()) {
    // Process row data from the second query
}

참고

mysqli_multi_query() 함수는 다음과 같은 경우에만 사용해야 한다는 점에 유의하는 것이 중요합니다. 개별 쿼리는 독립적이며 서로의 결과에 의존하지 않습니다.

위 내용은 PHP에서 여러 MySQL 쿼리를 동시에 실행하고 별도의 결과 세트를 처리하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.