현재 위치: > 최신 기사 목록> Fetch_all ()을 사용하여 다중 테이블 조인 쿼리 결과를 얻으십시오.

Fetch_all ()을 사용하여 다중 테이블 조인 쿼리 결과를 얻으십시오.

M66 2025-06-15

PHP에서 데이터베이스 쿼리 처리는 매일 개발에서 매우 일반적인 작업입니다. 여러 테이블에서 데이터를 가져와야 할 때 일반적으로 멀티 테이블 조인 (조인) 쿼리를 사용합니다. 쿼리를 실행 한 후 쿼리 결과를 쉽게 얻는 방법이 키가됩니다. 이 기사에서는 Fetch_all () 메소드를 사용하여 다중 테이블 조인 쿼리의 결과를 얻고 예제 코드와 함께 설명하는 방법을 소개합니다.

1. 멀티 테이블 연결 쿼리 소개

멀티 테이블 조인 쿼리는 특정 조건에 따라 여러 테이블에서 데이터를 연관시키고 결과를 반환 할 수 있습니다. 예를 들어, 두 개의 테이블 사용자주문이 있습니다. 우리는 모든 사용자와 해당 주문 정보를 쿼리하려고하며 가입을 사용할 수 있습니다.

 SELECT users.id, users.name, orders.order_id, orders.amount 
FROM users 
JOIN orders ON users.id = orders.user_id;

2. PHP에서 MySQLI를 사용하여 멀티 테이블 연결 쿼리를 수행하십시오.

PHP는 MySQL 데이터베이스를 운영하는 다양한 방법을 제공합니다. 여기서 우리는 mysqli extension을 사용하고 fetch_all () 메소드를 사용하여 모든 결과를 얻습니다.

1. 데이터베이스 연결을 설정하십시오

 <?php
$mysqli = new mysqli("m66.net", "username", "password", "database");

if ($mysqli->connect_error) {
    die("연결이 실패했습니다: " . $mysqli->connect_error);
}
?>

2. 멀티 테이블 조인 쿼리를 수행하십시오

 <?php
$sql = "SELECT users.id, users.name, orders.order_id, orders.amount 
        FROM users 
        JOIN orders ON users.id = orders.user_id";

$result = $mysqli->query($sql);

if (!$result) {
    die("쿼리가 실패했습니다: " . $mysqli->error);
}
?>

3. fetch_all ()을 사용하여 결과를 얻으십시오

fetch_all ()은 결과 세트의 모든 행을 한 번에 얻고 2 차원 배열을 반환합니다. 기본 반환 유형은 MySQLI_NUM , 즉 인덱스 어레이입니다. 또한 MySQLI_Assoc을 사용하여 연관 배열을 얻을 수 있습니다.

 <?php
$data = $result->fetch_all(MYSQLI_ASSOC);

foreach ($data as $row) {
    echo "사용자ID: " . $row['id'] . ",이름: " . $row['name'] . ",주문하다ID: " . $row['order_id'] . ",양: " . $row['amount'] . "<br>";
}
?>

4. 연결을 닫습니다

 <?php
$mysqli->close();
?>

3. 샘플 코드를 완료하십시오

 <?php
$mysqli = new mysqli("m66.net", "username", "password", "database");

if ($mysqli->connect_error) {
    die("연결이 실패했습니다: " . $mysqli->connect_error);
}

$sql = "SELECT users.id, users.name, orders.order_id, orders.amount 
        FROM users 
        JOIN orders ON users.id = orders.user_id";

$result = $mysqli->query($sql);

if (!$result) {
    die("쿼리가 실패했습니다: " . $mysqli->error);
}

$data = $result->fetch_all(MYSQLI_ASSOC);

foreach ($data as $row) {
    echo "사용자ID: " . $row['id'] . ",이름: " . $row['name'] . ",주문하다ID: " . $row['order_id'] . ",양: " . $row['amount'] . "<br>";
}

$mysqli->close();
?>

4. 요약

  • 멀티 테이블 조인 쿼리는 관련 데이터를 얻는 효과적인 방법입니다.

  • mysqliquery ()를 사용하여 쿼리를 실행하고 fetch_all ()을 사용하여 모든 결과를 한 번에 얻고 데이터 처리를 단순화하십시오.

  • fetch_all () 의 매개 변수를 mysqli_assoc 으로 설정하면 필드 이름을 통해 데이터에 쉽게 액세스 할 수 있습니다.

이 기사가 Fetch_all ()을 더 잘 이해하고 사용하여 다중 테이블 조인 쿼리의 결과를 얻을 수 있기를 바랍니다.