完美解决Column ‘xxx‘ in field list is ambiguous问题
复现问题
使用如下SQL查询数据:
SELECTid as id,`user`.login_name AS user_mobile,apply_status,( SELECT `value` FROM data_dict WHERE CODE = apply_status ) AS apply_status_value,apply_no,application_name,belong_org_code,belong_org_data_dict.`value` AS belong_org_code_value,business_contact_name,business_contact_mobile,auth_way,( SELECT `value` FROM data_dict WHERE CODE = auth_way ) AS auth_way_value,REPLACE ( REPLACE ( apply_service_type, '"', '' ), '"', '"' ) apply_service_type,apply_need_desc,apply_time,audit_time,audit_suggest FROMapplication_apply LEFT JOIN user ON user.id = application_apply.apply_user_id LEFT JOIN data_dict belong_org_data_dict ON belong_org_data_dict.`code` = application_apply.belong_org_code
却报出如下错误:
-
即
Column 'id' in field list is ambiguous
分析问题
我们在解决问题之前,首先要分析问题。做到知其然,知其所以然,这样才能有所成长,进而避坑。
将Column 'id' in field list is ambiguous翻译成中文就是字段列表中的列id不明确。
为什么不明确这个id呢?
通过如上的·mysql语句可得,application_apply表关联user表,但 application_apply表中存在id字段,而user表中也存在id字段。但如上mysql语句,并没有说明id字段是哪张表中的,因而mysql认为这个id字段是不明确的。
解决问题
既然知道问题的原因,我们便可如下修改
SQL
语句SELECTapplication_apply.id as id,`user`.login_name AS user_mobile,apply_status,( SELECT `value` FROM data_dict WHERE CODE = apply_status ) AS apply_status_value,apply_no,application_name,belong_org_code,belong_org_data_dict.`value` AS belong_org_code_value,business_contact_name,business_contact_mobile,auth_way,( SELECT `value` FROM data_dict WHERE CODE = auth_way ) AS auth_way_value,REPLACE ( REPLACE ( apply_service_type, '"', '' ), '"', '"' ) apply_service_type,apply_need_desc,apply_time,audit_time,audit_suggest FROMapplication_apply LEFT JOIN user ON user.id = application_apply.apply_user_id LEFT JOIN data_dict belong_org_data_dict ON belong_org_data_dict.`code` = application_apply.belong_org_code
即在
id
前加上application_apply.
查询结果如下图所示:
完美解决Column ‘xxx‘ in field list is ambiguous问题相关推荐
- Unknown column ‘xxx‘ in ‘field list‘
MySQL数据库插入数据时,出现Unknown column 'XXX' in 'field list' 问题('XXX'表示任意字符).例如下面: -- 删除表 DROP TABLE IF EXIS ...
- 插入数据时异常 Unknown column ‘XXX‘ in ‘field list‘
Unknown column 'XXX' in 'field list' 报错如图: 解决方式 我排除了字段无法对应等一系列问题 最后无可奈何把该字段从表中删除再添加就好了 疑问: 虽然问题是解决了, ...
- 错误代码: 1052 Column 'stu_id' in field list is ambiguous
1.错误描述 1 queries executed, 0 success, 1 errors, 0 warnings查询:select stu_id, (SELECT stu_name FROM t_ ...
- MySQL错误:Column ‘pno‘ in field list is ambiguous是什么问题呢?
ERROR 1052 (23000): Column 'pno' in field list is ambiguous 很多初学者在MySQL的基础学习中会出现上述的报错. 问题出在没有对 'pno' ...
- Column ‘dept_no‘ in field list is ambiguous
create view dept_vi as select emp_no, from_date, salary from employees e, salaries s where e.emp_no ...
- Unknown column 'xxx' in 'field list'
我是在插入语句的时候出现了错误 INSERT INTO `usertable`(id,username,password) VALUES(4,'zxc',123); 报错: 1054 - Unknow ...
- mysql 1054 42s22_MySQL 触发器的坑:ERROR 1054 (42S22): Unknown column 'xxx' in 'field list'
今天线上项目报错了 500 错误,Laravel 日志中显示 Illuminate/Database/QueryException with message 'SQLSTATE[42S22]: Col ...
- mysql 1054错误 Unknown column 'xxx' in 'field list'
出现问题的代码如下: s = '测试' sql = "INSERT INTO ffff(ID) VALUES (%s)" % (s) try:cursor.execute(sql) ...
- mysql1054错误——(1054, Unknown column 'xxx' in 'field list')
在使用scrapy框架连接数据库时遇到了1054错误 具体代码如下: try:self.cursor.execute('insert into qiubai(author,content) value ...
最新文章
- decimal类型保留两位小数
- 进阶学习(3.7) Flyweight Pattern 享元模式
- 远程桌面与本地桌面实现文件传输
- 这 30 个常用的 Maven 命令你必须熟悉!
- byte数组转为string_String类
- Silverlight通过Wcf Data Service访问数据库之ADO.NET Entity Framework篇
- java基础:13.1 集合框架 - ArrayList
- VC++网络安全编程范例(2)-创建自签名证书
- ExtJS简介--车辆调度
- winform 可拖动的自定义Label控件
- PHP的XML Parser(转)
- VIM文本编辑器相关命令实验总结
- navcat定时备份mysql_Navicat for MySQL定时备份数据库及数据恢复
- Ubuntu 关闭服务详解
- 单体架构、SOA架构、微服务架构的优点缺点以及区别联系
- 社群运营普遍存在的五个问题
- java线程池newfi_java线程池
- 如何恢复类视图中突然消失的类已经编程辅助工具VISUAL ASIST
- 使用MobileViT替换YOLOv5主干网络
- 比尔·盖茨退位 | 历史上的今天