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

原创不易

转载请标明出处

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

相关推荐
kpli9031 分钟前
OceanBase数据库SQL调优
数据库·sql·oceanbase
Koma-forever39 分钟前
Oracle SQL Developer设置打开表的时候如何是新窗口中打开
数据库·sql·oracle
C++chaofan1 小时前
MyBatis - Plus学习笔记
java·spring boot·笔记·后端·mysql·架构·mybatis
川石课堂软件测试3 小时前
Python | 高阶函数基本应用及Decorator装饰器
android·开发语言·数据库·python·功能测试·mysql·单元测试
奇点 ♡6 小时前
MySQL基础题
数据库·sql·mysql
cherry52306 小时前
Java大厂面试真题:Spring Boot + 微服务 + 缓存架构三轮技术拷问实录
jvm·spring boot·mysql·微服务·java面试·分布式架构·redis缓存
唐古乌梁海6 小时前
【mysql】MySQL 数据库迁移
数据库·mysql·adb
啊吧怪不啊吧6 小时前
SQL之表的时间类内置函数详解
大数据·服务器·数据库·sql
JanelSirry6 小时前
真实场景:防止缓存穿透 —— 使用 Redisson 布隆过滤器
数据库·mysql·缓存·redisson·布隆过滤器
mmm.c6 小时前
mysql启动提示1067:进程意外终止
数据库·mysql