SELECT * FROM (SELECT c_id FROM student st INNER JOIN score sc ON sc.s_id =st.s_id where st.s_id ="01") tb1,(select * from student st,score sc WHERE sc.s_id=st.s_id) tb2 WHERE tb1.s_id=tb2.s_id哪里有错误
时间: 2024-04-27 12:22:43 浏览: 84
数据库表数据的查询操作.docx
这个查询语句本身没有语法错误,但是可能存在逻辑错误。具体来说,它将两张表进行了笛卡尔积,然后筛选出选课与学号为"01"的同学相同的学生信息。这样做的结果是会返回符合条件的学生信息,但是可能会有重复的记录,因为同一学生可能会有多门课程与学号为"01"的同学所学相同。如果要避免重复的记录,可以使用 DISTINCT 关键字去重,或者使用 GROUP BY 子句对结果进行分组。
阅读全文