select * from department inner join (
select * from students inner join stu_detail on students.s_id = stu_detail.stu_id
) as s
on
department.d_id = s.dept_id;
【以下回答由 GPT 生成】
答案:
在执行两个id连接时出现错误,可能是因为MySQL默认设置下不允许在FROM子句中嵌套子查询,解决方法是可以将内部查询的结果作为临时表,并在外部查询中引用它。
下面是一个可能的解决方案:
CREATE TEMPORARY TABLE temp_students AS select * from students inner join stu_detail on students.s_id = stu_detail.stu_id;
select * from department inner join temp_students as s on department.d_id = s.dept_id;
这里我们创建了一个名为temp_students
的临时表,将内部查询的结果存储在其中。然后,我们在外部查询中引用了这个临时表。
注意:临时表只在当前会话中存在,当会话关闭时将被自动删除。
希望这能够解决你的问题!如果有任何其他问题,请随时提问。
【相关推荐】
可以把错误信息贴出来吗?