select statement/Oracle server的Sql查询帮助



我有一个表如下。

Id        Code         Indicator
1         AB             
1         CD            Y
1         EF              
2         BC            Y
3         AB         
4         GH            
4         AB            Y
5         CD             
5         BC            

现在我需要检索没有任何与之相关的指示符的ID。在本例中,检索到的行应该是

ID    Code     Indicator
3     AB        
5     CD 
5     BC

多亏了我在sql中得到了它,但我在Oracle发现器中拥有与视图相同的表。我如何写一个报告得到相同的结果?非常感谢所有的帮助!!

应该这样做(警告:未经测试):

select id, code
from table
where id not in (select id from table where indicator='Y')
SELECT *
FROM TABLE t1
WHERE T1.ID in (SELECT
                  t2.ID
                FROM Table t2
                GROUP BY t2.ID
                HAVING MAX(t2.Indicator) = 'Y')

最新更新