如何在sql中查找与特定行具有相似数据的行

时间:2011-12-11 19:29:38

标签: sql

让我说清楚 -

我有一个表格,其中包含CourseID,Semester,GPA等信息

我需要找到所有具有相同GPA(以及更多字段)的CourseID,如CourseID ='999'

我还想要一个带有AND而没有嵌套SELECT

的解决方案

谢谢!

enter image description here

所以我必须找到所有具有相同GPA和FailPerc的courseCode(代码999,2011年,Sem B,日期2)

希望现在更干净

2 个答案:

答案 0 :(得分:2)

这可能有用......

select c1.* 
from course c1
inner join course c2 on c1.pga= c2.pga
where c2.courseid = 999
and c1.courseid <> c2.courseid

使用子选择

select c1.*
from couser c1
where pga = (select pga 
             from course c2 
             where c2.courseid=999)
and c1.courseid <> 999

答案 1 :(得分:1)

在运行任何查询之前,您需要以某种方式检索原始数据行的数据。除非您为MS Access之类的东西编写SQL并且可以使用DLOOKUP()之类的域函数,否则我没有看到任何其他方式来获取此信息。这意味着,您至少需要2个SELECT查询,并且它们必须嵌套。