MYSQL Unknown column ‘appreciation.latitude‘ in ‘where clause‘

问题

笔者编写mysql语句,执行报错

详细问题

笔者sql代码

sql 复制代码
SELECT ap.*, su.username, wh.wheat_name
FROM appreciation ap
LEFT JOIN sys_user su ON su.id = ap.user_id
LEFT JOIN wheat wh ON wh.id = ap.crop_id
WHERE appreciation.latitude = 1

报错信息

shell 复制代码
> 1054 - Unknown column 'appreciation.latitude' in 'where clause'
> 时间: 0s

解决方案

对于另起别名的数据表,后续使用另起别名进行操作。而非原名称

即将

sql 复制代码
WHERE appreciation.latitude = 1

修改为

sql 复制代码
WHERE ap.latitude = 1

产生原因

该错误产生的原因是在 SQL 查询中使用了表别名 ap,但在 WHERE 子句中却使用了原始表名 appreciation,导致数据库无法识别该列。

解决原因

为了避免这种错误,应该在使用表别名时,后续的操作都要使用相同的别名,确保统一性,以便数据库能正确解析列名。

参考文献

产生原因与解释原因部分 部分内容参考chatgpt

原创不易

转载请标明出处

如果对你有所帮助 别忘啦点赞支持哈

相关推荐
aiks_yuan6 小时前
MySQL GROUP BY 很慢怎么优化:加了索引反而从 1 秒变 7 秒,Using temporary 该不该消(MySQL 8.2 实测 400 万行)
mysql
数据库小学妹7 小时前
MySQL大字段治理:行溢出机制、覆盖索引与拆表
数据库·mysql·性能优化
这个DBA有点耶8 小时前
MySQL 8.0不可见索引:删索引怕出事,不删又拖慢写入——中间态怎么用?
数据库·mysql·代码规范
噜哥带你玩转 AI 大模型11 小时前
面试加分项!CASE WHEN 两种写法、CTE 公共表表达式、四大类窗口函数,老哥一次讲透
mysql·窗口函数·cte·sql 进阶
freejackman11 小时前
【工程化】从“单兵作战”到“多引擎架构”:基于门面模式的重构实战
大数据·数据库·hive·sql·测试工具·设计模式·架构
bksczm11 小时前
InnoDB 内存结构总览:Change Buffer、AHI 与 Log Buffer
数据库·mysql
招风的黑耳11 小时前
SpringBoot+Vue+MySQL 民宿在线预定平台 完整可运行版(源码+文档)
vue.js·spring boot·mysql
码途行者14 小时前
网站的SQL 注入:从攻击原理到防御措施
开发语言·sql·php
.痞老板.14 小时前
mysql初阶--数据库设计
数据库·mysql·oracle