oracle多列子查詢的實(shí)現(xiàn)
oracle多列子查詢是oracle數(shù)據(jù)庫(kù)中的一種查詢方式,下面就為您詳細(xì)介紹oracle多列子查詢的實(shí)現(xiàn)方法,希望能夠?qū)δ軌蛴兴鶐椭?/p>
多列子查詢:
oracle子查詢一般都是返回單列,實(shí)際上數(shù)據(jù)庫(kù)對(duì)此并沒(méi)有進(jìn)行限制,子查詢也可以返回多列.oracle多列子查詢的例子:
檢索每種產(chǎn)品在其類型中價(jià)格***的產(chǎn)品:
步驟:
1.通過(guò)分組查詢,統(tǒng)計(jì)每類產(chǎn)品的***價(jià)格:
- select product_type_id,min(Price) from products group by product_type_id
結(jié)果為:
PRODUCT_TYPE_ID MIN(PRICE)
--------------- ----------
1 19.95
2 13.95
3 12.99
4 10.99
13.49
2. 然后再掃描產(chǎn)品表中每行數(shù)據(jù),看當(dāng)前行的類別編輯與價(jià)格是否屬于上面子查詢中的一項(xiàng);
完整查詢:
- select product_id,product_type_id,name,price
- from products
- where
- (product_type_id , price)
- in
- (select product_type_id , min(price)
- from
- products
- group by
- product_type_id)
查詢結(jié)果:
PRODUCT_ID PRODUCT_TYPE_ID NAME PRICE
---------- --------------- ------------------------------ ----------
1 1 Modern Science 19.95
4 2 Tank War 13.95
8 3 From Another Planet 12.99
9 4 Classical Music 10.99
【編輯推薦】