我的问题是关于Oracle sql的,我有两个表,一个是study表,另一个是study part表,study表的主键是styno,studypart表的主键是(styno + sqncno)。
例如:studypart表包含以下数据。
studyNo sqnc part approvalIN
--------------------------------
123 1 fgh Y
123 2 jhf N
123 3 rty N
456 1 wer N
456 2 wdg N
456 3 ghg N
我需要以这样一种方式进行查询,即我从studypart表中输出的结果为研究编号,其中所有approvalIn均为N。如果至少有一个approvalIn为“Y”,则该研究编号应从结果中排除。
所需输出:研究编号:456
我在存储过程中尝试了这种实现,分别取Y和N approvalIn计数,即,如果一个研究没有两个计数,则排除它,如果它只有一个计数,则说N或Y包括它。但我想知道如何实现这是查询。
1条答案
按热度按时间xmd2e60i1#
您可以通过排除“approvalIN = 'N'”计数与“approvalIN”值的总数不匹配的行来执行此操作。
检查演示here。