Salı , 16 Eylül 2014
Anasayfa / MAKALELER / Veri Tabanı / Union All Kullanımı

Union All Kullanımı

Oracle da birkaç tablo üzerinde birlestirme ya da fark alma islemleri yapilabilir. Bunun için UNION, INTERSECTION ve MINUS operatörleri kullanilir. Asagidaki örneklerde UNION operatörü ile birlestirilmistir sonuçlari görecegiz.

 

unionall

 

 

SELECT JOB_ID

FROM EMPLOYEE

WHERE DEPARTMENT_ID = 10

UNION ALL

SELECT JOB_ID

FROM EMPLOYEE

WHERE DEPARTMENT_ID = 20

Sorgu çalistiginda çikan sonucumuz

JOB

———-

MGR

TECH

HR

MGR

HR

Execution Plan

———————————————————-

0 SELECT STATEMENT Optimizer=ALL_ROWS (Cost=6 Card=4 Bytes=40)

1 0 UNION-ALL

2 1 TABLE ACCESS (FULL) OF ‘EMPLOYEE’ (TABLE) (Cost=3 Card=2

Bytes=20)

3 1 TABLE ACCESS (FULL) OF ‘EMPLOYEE’ (TABLE) (Cost=3 Card=2

Bytes=20)

 

SELECT JOB_ID

FROM EMPLOYEE

WHERE DEPARTMENT_ID = 10

UNION

SELECT JOB_ID

FROM EMPLOYEE

WHERE DEPARTMENT_ID = 20

 

 

JOB

———-

HR

MGR

TECH

 

 

Execution Plan

———————————————————-

0 SELECT STATEMENT Optimizer=ALL_ROWS (Cost=8 Card=4 Bytes=40)

1 0 SORT (UNIQUE) (Cost=8 Card=4 Bytes=40)

2 1 UNION-ALL

3 2 TABLE ACCESS (FULL) OF ‘EMPLOYEE’ (TABLE) (Cost=3 Card

=2 Bytes=20)

 

4 2 TABLE ACCESS (FULL) OF ‘EMPLOYEE’ (TABLE) (Cost=3 Card

=2 Bytes=20)

 

SELECT DEPARTMENT_ID, JOB_ID

FROM EMPLOYEE

WHERE DEPARTMENT_ID = 10

UNION ALL

SELECT DEPARTMENT_ID, JOB_ID

FROM EMPLOYEE

WHERE DEPARTMENT_ID = 20

ORDER BY 1

 

DEP JOB_ID

———- ———-

10 TECH

10 MGR

20 MGR

20 HR

20 HR

 

 

Execution Plan

———————————————————-

0 SELECT STATEMENT Optimizer=ALL_ROWS (Cost=7 Card=4 Bytes=40)

1 0 SORT (ORDER BY) (Cost=6 Card=4 Bytes=40)

2 1 UNION-ALL

3 2 TABLE ACCESS (FULL) OF ‘EMPLOYEE’ (TABLE) (Cost=3 Card

=2 Bytes=20)

 

4 2 TABLE ACCESS (FULL) OF ‘EMPLOYEE’ (TABLE) (Cost=3 Card

=2 Bytes=20)

Yusuf Arslan

Sakarya Üniversitesi Bilgisayar Mühendisliği bölümünü bitirdikten sonra kariyerine Datawarehouse-Database Uzmanı olarak devam etmektedir Sitenin kurucusu ve yazarıdır.
yusufarslanbm@gmail.com adresinden bana ulaşabilirsiniz.
Powered by Starbox

Hakkında Yusuf Arslan

Sakarya Üniversitesi Bilgisayar Mühendisliği bölümünü bitirdikten sonra kariyerine Datawarehouse-Database Uzmanı olarak devam etmektedir Sitenin kurucusu ve yazarıdır. yus[email protected] adresinden bana ulaşabilirsiniz.

Cevapla

E-posta adresiniz yayınlanmayacak. Required fields are marked *

*


Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>