让有一个表Tab1
Create table Tab1 (
Names Varchar2(40) ,
Sal Decimal (18,2)
);
Insert into Tab1 values
(‘A’ , 1000);
Insert into Tab1 values
(‘B’ , 1500);
Insert into Tab1 values
(‘C’ , 1200);
Insert into Tab1 values
(‘D’ , 2000);
问题陈述:
Select * From Tab1 where
Sal = ALL (Select sal
From Tab1 where Sal = 3000)
输出:
All rows from Tab1 came as output
我的理解:
[如果子查询返回0值,则主查询也应返回0值,但在这种情况下,当子查询中的WHERE语句为FALSE时,它将返回所有行。虽然为TRUE时效果很好,但我无法理解为什么FALSE时它会抛出所有行]
让有一个表Tab1创建表Tab1(名称Varchar2(40),Sal Decimal(18,2));插入Tab1值(“ A”,1000);插入Tab1值(“ B”,1500);插入...