首页 > 数据库 > mysql教程 > 如何修复'ON 子句中的 MySQL 未知列”错误?

如何修复'ON 子句中的 MySQL 未知列”错误?

Patricia Arquette
发布: 2025-01-13 06:49:42
原创
485 人浏览过

How to Fix the

MySQL“ON 子句中的未知列”错误故障排除

MySQL 的“#1054 - 'on 子句' 中的未知列 '...'”错误通常表示 SQL 查询的连接语法存在问题。 当您将逗号样式连接与更现代的 ANSI-92 JOIN 语法相结合时,通常会发生这种情况。 数据库对连接顺序的解释不一致,导致错误。

解决方案是标准化你的连接方法。 避免混合风格;相反,对查询中的所有联接始终使用 ANSI-92 JOIN 关键字。

这是一个演示纠正的示例:

<code class="language-sql">SELECT p.*,
       IF(COUNT(ms.PropertyID) > 0, 1, 0) AS Contacted,
       pm.MediaID,
       DATE_FORMAT(p.AvailableFrom, '%d %b %Y') AS AvailableFrom,
       AsText(pg.Geometry) AS Geometry
FROM property p
JOIN propertygeometry pg ON p.PropertyGeometryID = pg.id
JOIN shortlist sl ON sl.PropertyID = p.id AND sl.MemberID = 384216
LEFT JOIN message ms ON ms.PropertyID = p.id AND ms.SenderID = 384216
LEFT JOIN property_media pm ON pm.PropertyID = p.id AND pm.IsPrimary = 1
WHERE p.paused = 0
GROUP BY p.id;</code>
登录后复制

通过遵守这种一致的 JOIN 语法,您将防止出现“ON 子句中的未知列”错误,并确保您的 MySQL 查询正确执行。

以上是如何修复'ON 子句中的 MySQL 未知列”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板