SQL四表INNER JOIN关联报错:提示‘no such column’问题求助
问题分析与解决
你的SQL报错核心原因是SELECT子句中的字段引用和FROM子句里定义的表别名不匹配,数据库无法识别你指定的列。
具体错误点:
- 给
Article表起了别名a,但SELECT里用了Article.Title、未关联别名的a_id,应改为a.Title、a.a_id - 给
Journal表起了别名j,却用Journal.title,应改为j.title - 给
Issue表起了别名iss,却用Issue.Number,应改为iss.Number - 给
Author表起了别名au,却用Author.Name,应改为au.Name
修正后的SQL代码:
const sql = "SELECT a.a_id, j.title, a.Title, iss.Number, au.Name FROM Article AS a INNER JOIN Author AS au ON a.au_id = au.au_id INNER JOIN Issue AS iss ON a.i_id = iss.i_id INNER JOIN Journal AS j ON iss.j_id = j.j_id";
额外提醒:若你的数据库区分大小写(如PostgreSQL),需确保SQL中的字段名和表结构完全一致,比如表结构里是number,就不能写成Number,要改为iss.number。
内容的提问来源于stack exchange,提问作者user20905730
相关产品推荐
相关产品推荐

