Sql 如果满足另一个表中的条件,则显示该表中的行
我有两个表格,Sql 如果满足另一个表中的条件,则显示该表中的行,sql,oracle,oracle-apex,Sql,Oracle,Oracle Apex,我有两个表格,学生和应用程序。一个学生有一个ID和一个名字,可以提出许多申请。应用程序表具有ID、作为FK的学生ID和应用程序状态 我想显示所有学生,其中没有一个学生的申请状态为“申请人接受录取” 我试过: SELECT STUDENTS.FIRST_NAME ||' '||STUDENTS.LAST_NAME "Student Name" FROM STUDENTS JOIN APPLICATIONS ON STUDENTS.SRN = APPLICATIONS.SRN WHERE APPLI
学生
和应用程序
。一个学生有一个ID和一个名字,可以提出许多申请。应用程序表具有ID、作为FK的学生ID和应用程序状态
我想显示所有学生,其中没有一个学生的申请状态为“申请人接受录取”
我试过:
SELECT STUDENTS.FIRST_NAME ||' '||STUDENTS.LAST_NAME "Student Name"
FROM STUDENTS
JOIN APPLICATIONS ON STUDENTS.SRN = APPLICATIONS.SRN
WHERE APPLICATION_STATUS != 'APPLICANT ACCEPTED OFFER';
这是我到目前为止尝试过的,但它不是显示尚未接受录取通知书的学生,而是显示所有未被接受的申请。您不需要加入,请使用
不存在
SELECT STUDENTS.FIRST_NAME ||' '||STUDENTS.LAST_NAME "Student Name"
FROM STUDENTS
WHERE not exists ( select 1 from
APPLICATIONS where STUDENTS.SRN = APPLICATIONS.SRN
And APPLICATION_STATUS = 'APPLICANT ACCEPTED OFFER');
您不需要加入,请使用notexists
SELECT STUDENTS.FIRST_NAME ||' '||STUDENTS.LAST_NAME "Student Name"
FROM STUDENTS
WHERE not exists ( select 1 from
APPLICATIONS where STUDENTS.SRN = APPLICATIONS.SRN
And APPLICATION_STATUS = 'APPLICANT ACCEPTED OFFER');
请提供一些样本数据和预期输出。请提供一些样本数据和预期输出。