How can self-joining a table be beneficial when comparing data in PHP?

Self-joining a table in PHP can be beneficial when comparing data that is related within the same table. This allows you to retrieve data from the same table by creating an alias for it and joining it with itself based on a common column. This can be useful for comparing different rows within the same table, such as when you need to find related records or perform calculations between rows.

<?php
// Connect to the database
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

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

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

// Perform a self-join query to compare data in the same table
$sql = "SELECT t1.column1, t1.column2, t2.column1 as comparison_column
        FROM myTable t1
        INNER JOIN myTable t2 ON t1.common_column = t2.common_column";

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

if ($result->num_rows > 0) {
    // Output data of each row
    while($row = $result->fetch_assoc()) {
        echo "Column1: " . $row["column1"]. " - Column2: " . $row["column2"]. " - Comparison Column: " . $row["comparison_column"]. "<br>";
    }
} else {
    echo "0 results";
}

$conn->close();
?>