在 MySQL 中使用 JOIN 时避免出现不明确的列错误

2024-03-25

我的查询如下所示:

$sql = "
SELECT u.*, s.*
FROM bands u
inner join statuses s on u.status_id = s.id
WHERE u.status_id = 1
ORDER BY u.band_name";

我想输出IDbands像这样的表:

<?php while($row = $result->fetch_assoc()){ ?>
            <tr>
              <?php
                    echo '<td id="' . $row['id'] . '">This is the band</td>';
              ?>
            </tr>
<?php }

but $row['id']没有输出任何内容,我猜测是由于某种不明确的列问题,但我不确定如何正确查询它。我试过$row['u.id']也是如此,但我认为这不是正确的别名使用,因为它也没有输出任何内容。


您需要为 id 列创建不冲突的别名;

SELECT u.*, s.*, u.id AS uid, s.id AS sid
FROM bands u
inner join statuses s on u.status_id = s.id
WHERE u.status_id = 1
ORDER BY u.band_name

然后你可以把它们挑选出来$row['uid'] and $row['sid']并仍然像往常一样访问您的其他列。矛盾的id列也仍然存在,只是避免使用它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 MySQL 中使用 JOIN 时避免出现不明确的列错误 的相关文章

随机推荐