欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

oracle中all、any函數(shù)用法與區(qū)別說(shuō)明

 更新時(shí)間:2023年04月15日 10:25:32   作者:努力的小羽兒  
在Oracle中,any()表示括號(hào)內(nèi)任何一個(gè)條件,只要有一個(gè)滿(mǎn)足即可;而all()表示所有的條件都滿(mǎn)足才可以

基礎(chǔ)概念

在Oracle中,any()表示括號(hào)內(nèi)任何一個(gè)條件,只要有一個(gè)滿(mǎn)足即可;而all()表示所有的條件都滿(mǎn)足才可以。

代碼演示

1.all用法

--大于最大值
select * from A where id >= all(select id from A)
--這相當(dāng)于
select * from A where id >= (select max(id) from A)
 
--小于最小值
select * from A where id <= all(select id from A)
--這相當(dāng)于
select * from A where id <= (select min(id) from A)

2.any用法 

--大于任意一個(gè)數(shù)即可,大于最小值
select * from A where id >= any(select id from A)
--這相當(dāng)于
select * from A where id >= (select min(id) from A)
 
--小于任意一個(gè)數(shù)即可,小于最大值
select * from A where id <= any(select id from A)
--這相當(dāng)于
select * from A where id <= (select max(id) from A)

Oracle中any和all的區(qū)別用法

對(duì)于any,all的用法,書(shū)中說(shuō)的比較繞口,難以理解,如果通過(guò)舉例就會(huì)比較清晰.

any的例子:

select * from t_hq_ryxx where gongz > any (select pingjgz from t_hq_bm);

輸出的結(jié)果是所有大于字段‘pingjgz‘中最小數(shù)的值,簡(jiǎn)單來(lái)說(shuō)就是輸出的數(shù)全部大于‘pingjgz‘字段中的最小值;

select * from t_hq_ryxx where gongz < all (select pingjgz from t_hq_bm);

輸出的結(jié)果是所有小于字段‘pingjgz‘中最大數(shù)的值,簡(jiǎn)單來(lái)說(shuō)就是輸出的數(shù)全部小于‘pingjgz‘字段中的最大值;

即:大于最小值,小于最大值

all的例子:

select * from t_hq_ryxx where gongz > all (select pingjgz from t_hq_bm);

輸出的結(jié)果是所有大于字段‘pingjgz‘中最大數(shù)的值,簡(jiǎn)單來(lái)說(shuō)就是輸出的數(shù)全部大于‘pingjgz‘字段中的最大值;

select * from t_hq_ryxx where gongz < all (select pingjgz from t_hq_bm);

輸出的結(jié)果是所有小于字段‘pingjgz‘中最小數(shù)的值,簡(jiǎn)單來(lái)說(shuō)就是輸出的數(shù)全部小于‘pingjgz‘字段中的最小值;

即:小于最小值,大于最大值

如果還是不清楚,把下面這句看懂也就夠了:

any 就是匹配集合中的任意一個(gè)就滿(mǎn)足條件了;而 all 要跟所有的都比較,所有都滿(mǎn)足以后才為真。

相關(guān)文章

最新評(píng)論