What are some best practices for structuring SQL queries in PHP to retrieve data from multiple tables efficiently?

When retrieving data from multiple tables in SQL queries in PHP, it is important to structure the queries efficiently to avoid performance issues. One best practice is to use JOIN statements to combine related tables instead of making separate queries for each table. This reduces the number of database calls and improves query performance.

<?php
// Establish a database connection
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";

$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// SQL query to retrieve data from multiple tables using JOIN
$sql = "SELECT users.username, orders.order_id, orders.total_amount
        FROM users
        INNER JOIN orders ON users.user_id = orders.user_id";

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

if ($result->num_rows > 0) {
    // Output data of each row
    while($row = $result->fetch_assoc()) {
        echo "Username: " . $row["username"]. " - Order ID: " . $row["order_id"]. " - Total Amount: " . $row["total_amount"]. "<br>";
    }
} else {
    echo "0 results";
}

$conn->close();
?>