带有内连接的 SQL 选择

标签 sql inner-join

我知道这个问题以前曾被问过,但我发现很难应用该原则来解决我的问题。我有 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/

相关文章:

sql - 如何对数据集进行密集排名

用于数据管理的MySQL程序编写

mysql 查询连接 3 个表,其中一个表没有关联

mysql - 如何在 MySQL 中使用更新语句,同时使用两个内联接并将表设置为串联?

c# - 如何编辑 Entity 框架生成的 sql 查询?

mysql - 关系数据库中的链修改

mysql - 我们如何获取列的值用作内连接的表名?

mysql - SQL 连接多个表并按单列排序

mysql - 多个连接出现问题

SQL 内部连接在外部连接内;嵌套改变结果