我在一个网站上工作,上面显示了两支球队的足球成绩和我的数据库中的两个分数。
这是我的密码:

<?php
        $result = mysql_query( "SELECT * FROM resultat
        LEFT JOIN brukere ON resultat.dommer = brukere.id
        INNER JOIN lag ON resultat.lag1 = lag.id
            INNER JOIN lag ON resultat.lag2 = lag.id
        ORDER BY slutt DESC
        " )
        or die("SELECT Error: ".mysql_error());
        $num_rows = mysql_num_rows($result);if ($result) {while ($row = mysql_fetch_array($result)) {
        $_SESSION['id']=$row['id'];
        ?>
        <tr>
                <td><?php echo $row['klubb']; ?></td>
                <td><?php echo $row['klubb']; ?></td>
                <td><?php echo $row['stilling1'] . " - " . $row['stilling2']; ?></td>
                <td><?php echo $row['roed'] . " rødt og " . $row['gult'] . " gult"; ?></td>
                <td><?php echo $row['bane']; ?></td>
                <td><?php echo $row['navn']; ?></td>
            </tr>
        <?php
        }
        }
        ?>

我得到:
选择错误:非唯一表/别名:“lag”
当我尝试:
INNER JOIN lag s ON resultat.lag1 = lag.id
INNER JOIN lag c ON resultat.lag2 = lag.id

我得到:
选择错误:“on子句”中的未知列“lag.id”
我该怎么做?同一表中的两个联接

最佳答案

您需要使用刚才给表lag的别名。您在第一次连接时分配了s,在第二次连接时分配了c,因此您应该使用它们

INNER JOIN lag s ON resultat.lag1 = s.id
INNER JOIN lag c ON resultat.lag2 = c.id

关于php - 在同一张 table 上的两个联接,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17091753/

10-12 05:36