未找到列:1054 'on 子句中的未知列 'locations.id'
Posted
技术标签:
【中文标题】未找到列:1054 \'on 子句中的未知列 \'locations.id\'【英文标题】:Column not found: 1054 Unknown column 'locations.id' in 'on clause未找到列:1054 'on 子句中的未知列 'locations.id' 【发布时间】:2019-08-23 23:26:50 【问题描述】:我正在尝试从具有特定位置的数据库加载活动。我尝试用这个查询来做到这一点:
public function selectAllActivities()
$sql = "SELECT * FROM `activities` INNER JOIN `locations` on `activities`.`location_id` = `locations.id`";
$stmt = $this->pdo->prepare($sql);
$stmt->execute();
return $stmt->fetchAll(PDO::FETCH_ASSOC);
但是当我加载网站时,我得到了这个错误:
Column not found: 1054 Unknown column 'locations.id' in 'on clause
【问题讨论】:
位置表中有哪些列? @JayBlanchard id 和名称 【参考方案1】:这是一个错字,但由于反引号,我无法在评论中解释它。
这个:
`locations.id`
应该是
// v-v------- Notice the backticks
`locations`.`id`
【讨论】:
【参考方案2】:你试过了吗
`activities`.`location_id` = `locations`.`id`
内连接应该是这样的
ON table1.column_name = table2.column_name;
You can read more at this URL
【讨论】:
它已经说 INNER JOINlocations
on activities
.location_id
= locations.id
"以上是关于未找到列:1054 'on 子句中的未知列 'locations.id'的主要内容,如果未能解决你的问题,请参考以下文章
未找到列:Laravel 5 多对多关系查询中“on 子句”中的 1054 未知列“managers.id”
未找到列:1054“where 子句”中的未知列“MONTH(date)”[重复]
SQLSTATE [42S22]:未找到列:1054 'where 子句'中的未知列 'id'(SQL:select * from `songs` where `id` = 5 limit 1)