我知道这个问题以前曾被问过,但我发现很难应用该原则来解决我的问题。我有 2 个表,我想从中选择数据。
我尝试使用下面的内连接 SQL 查询:
$query1 = "SELECT `entries.id`, `code_id`, FROM `entries` INNER JOIN `codes` ON `code_id` = `codes.id`";
$result = mysql_query($query1);
我的显示如下:
while($row = mysql_fetch_array( $result ))
{
echo "<tr>";
echo "<td>" . $row['id'] . "</td>";
echo "<td>" . $row['name'] . "</td>";
echo "<td>" . $row['msisdn'] . "</td>";
echo "<td>" . $row['created'] . "</td>";
echo "<td>" . $row['code_id'] . "</td>";
echo "</tr>";
}
我试图从表代码中获取实际代码,并将其显示到网站上,但我不断获取 id(数字)而不是实际代码。
有人可以帮忙吗?我已经在互联网上查过,甚至还得到了一些电子书,但我仍然是新手,希望有人指导我完成整个过程。感谢所有意见。
最佳答案
如果不同表中存在同名字段(例如“id”),则必须为字段指定新名称:
$query1 = "SELECT `entries.id` as entriesid, entries.name, entries.msisdn, entries.created, `codes.id` as codesid, FROM `entries` INNER JOIN `codes` ON `entries.id` = `codes.id`";
$result = mysql_query($query1);
...
echo "<td>" . $row['entriesid'] . "</td>";
echo "<td>" . $row['name'] . "</td>";
echo "<td>" . $row['msisdn'] . "</td>";
echo "<td>" . $row['created'] . "</td>";
echo "<td>" . $row['codesid'] . "</td>";
关于带有内连接的 SQL 选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14702369/