我不明白为什么ALL
运算符与>=
运算符返回最大值;例如我发现的一本书
select S.surname as surname, S.name as name, count(P1.id) as counting
from S join P as P1 on S.cf=P1.cf
group by S.name, S.surname having count(P1.id)>= ALL
(
select count(P2.id) from P as P2 group by P2.CF
)
我了解如果a > ALL (1,2,3)
大于3,a
会返回true,因为如果true
大于列表中的所有元素,我将获得a
;
但是>=
我有更大的OR等于'那么'是什么意思? a
大于或等于我列表中的所有元素'?例如3>=ALL(1,2,3)
不大于列表中的所有元素,并且它不等于列表中的所有元素,因此它不满足条件,所以为什么该查询应该返回最大值是3?
更新 我发现这种行为的书就是这个 https://books.google.it/books/about/Sistemi_di_basi_di_dati_e_applicazioni.html?id=ObenCgAAQBAJ&printsec=frontcover&source=kp_read_button&redir_esc=y#v=onepage&q&f=false 第143页的预览显示了我所说的
的示例