php – 1054完全加入的未知列,但不是其他联接
发布时间:2020-12-13 16:54:36 所属栏目:PHP教程 来源:网络整理
导读:为什么我从以下 mysql语法中得到“1054 Unknown Column error”: SELECT attorney_first_name,attorney_last_name,att_school,att_degree_obtainedFROM jos_legalally_attorneysFULL JOIN jos_legalally_attorney_educationON jos_legalally_attorneys.user
为什么我从以下
mysql语法中得到“1054 Unknown Column error”:
SELECT attorney_first_name,attorney_last_name,att_school,att_degree_obtained FROM jos_legalally_attorneys FULL JOIN jos_legalally_attorney_education ON jos_legalally_attorneys.user_id=jos_legalally_attorney_education.user_id; 它导致错误: #1054 - Unknown column 'jos_legalally_attorneys.user_id' in 'on clause' 尝试完全加入时,我只收到此错误.使用此精确语法时,所有其他连接(内部,右侧,左侧)都是成功的. (我尝试了FULL OUTER JOIN变体). 解决方法
报告为
here,MySQL不支持FULL JOIN,因此您的查询解释如下:
SELECT attorney_first_name,att_degree_obtained FROM jos_legalally_attorneys as FULL #FULL is taken as table alias!! INNER JOIN jos_legalally_attorney_education ON jos_legalally_attorneys.user_id=jos_legalally_attorney_education.user_id; 现在,因为它具有FULL作为jos_legalally_attorneys的表别名,所以它无法正常工作. 如果您尝试以下查询,它应该没有错误(即使它没有做你想要的): SELECT attorney_first_name,att_degree_obtained FROM jos_legalally_attorneys FULL JOIN jos_legalally_attorney_education ON FULL.user_id=jos_legalally_attorney_education.user_id; 现在,为了获得MySQL所需的FULL JOIN,你需要做这样的事情(如图所示): SELECT attorney_first_name,att_degree_obtained FROM jos_legalally_attorneys LEFT JOIN jos_legalally_attorney_education ON jos_legalally_attorneys.user_id=jos_legalally_attorney_education.user_id UNION ALL SELECT attorney_first_name,att_degree_obtained FROM jos_legalally_attorneys RIGHT JOIN jos_legalally_attorney_education ON jos_legalally_attorneys.user_id=jos_legalally_attorney_education.user_id (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |