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

原创不易

转载请标明出处

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

相关推荐
DCTANT7 小时前
【原创】国产化适配-全量迁移MySQL数据到OpenGauss数据库
java·数据库·spring boot·mysql·opengauss
程序员岳焱8 小时前
Java 与 MySQL 性能优化:MySQL全文检索查询优化实践
后端·mysql·性能优化
喜欢敲代码的程序员9 小时前
SpringBoot+Mybatis+MySQL+Vue+ElementUI前后端分离版:项目搭建(一)
spring boot·mysql·elementui·vue·mybatis
钢铁男儿9 小时前
C# 委托(调用带引用参数的委托)
java·mysql·c#
叁沐10 小时前
MySQL 02 日志系统:一条SQL更新语句是如何执行的?
mysql
DataGear10 小时前
如何在DataGear 5.4.1 中快速制作SQL服务端分页的数据表格看板
javascript·数据库·sql·信息可视化·数据分析·echarts·数据可视化
RunsenLIu10 小时前
基于Vue.js + Node.js + MySQL实现的图书销售管理系统
vue.js·mysql·node.js
码不停蹄的玄黓10 小时前
MySQL Undo Log 深度解析:事务回滚与MVCC的核心功臣
数据库·mysql·undo log·回滚日志
数据狐(DataFox)10 小时前
SQL参数化查询:防注入与计划缓存的双重优势
数据库·sql·缓存
Arthurmoo10 小时前
Linux系统之MySQL数据库基础
linux·数据库·mysql