php - 此查询的可能 JOIN

标签 php mysql

我有这个问题:

$sql = "SELECT 
      updates.u_id AS u_id,
      updates.date_submitted AS date_submitted,
      updates.deadline AS deadline,
      updates.description AS description,
      updates.priority AS priority,
      pages.page_name AS page_name,
      clients.fname AS fname,
      clients.lname AS lname,
      projects.p_url AS p_url,
      projects.p_title AS p_title
      FROM updates
      INNER JOIN projects ON updates.p_id = projects.p_id
      INNER JOIN clients  ON projects.c_id  = clients.c_id
      INNER JOIN pages    ON updates.page  = pages.page
      LEFT JOIN admin ON updates.a_id = admin.a_id
      WHERE u_id='$id' LIMIT 1";

给我一​​个问题的部分是:

      INNER JOIN pages    ON updates.page  = pages.page

我正在使用此查询来显示某个项目的更新信息。我将页面存储在 PAGES 表中,当客户提交更新时,他们可以选择要更新的页面。

我的 UPDATE 表中有这个:updates.page 在这种情况下存储为 INT,我的其中一行是“1”

在我的 PAGES 表中,我有:pages.page_id 与:updates.page 相同

知道我可以用我的查询做什么来解决这个问题吗?

错误:

“on 子句”中的未知列“pages.page”

最佳答案

尝试将其更改为:

INNER JOIN pages    ON updates.page  = pages.page_id

关于php - 此查询的可能 JOIN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/695025/

相关文章:

php - Doctrine 单表继承保留 findAll

PHP/MySQL 只更新第一行的宽度

php - 将数据库 ID 混淆为面向客户的号码

php - 图片到第一行

PHP删除多维数组中的重复数组

php - 重定向 - 登录后重定向到上一页?

php - 从字段中获取最大值和最小值

php - 如何修复此代码以回显输出而不是未定义的? JSONP、PHP、MySQL

mysql - 如何在 Mysql/Sql 中按时间列对表进行排序?

mysql - 如果 NOT IN 段中的表为空,则 SQL 语句不返回任何结果