SQL Union ve Union ALL
Bu komutlar birden fazla tabloyu birleştirmek için kullanılır.
SQL Union ve Union All
Bu komutlar birden fazla tabloyu birleştirmek için kullanılır. Joinler ile karıştırılmamalıdır. Tablolar birleştirilirken tablolardaki alanlar aynı isimde değilse alanlar birbirine benzetilir.
OgrenciTanim Tablosu
Personel Tablosu
Örnek:
Öğrencileri ve personelleri bir listede gösterelim.
SELECT
'Öğrenci' AS Tur,
ad,
soyad,
ogrno,
tel,
0 AS maas,
'' AS adresi
FROM OgrenciTanim
UNION ALL
SELECT
'Personel' AS Tur,
ad,
soyadi AS soyad,
'' AS ogrno,
tel,
maas,
adresi
FROM Personel
Örnek 2:
Adı a harfi ile başlayan öğrenci ve personelleri listeleyelim.
Çözüm 1:
SELECT
'Öğrenci' AS Tur,
ad,
soyad,
ogrno,
tel,
0 AS maas,
'' AS adresi
FROM OgrenciTanim
WHERE ad LIKE 'a%'
UNION ALL
SELECT
'Personel' AS Tur,
ad,
soyadi AS soyad,
'' AS ogrno,
tel,
maas,
adresi
FROM Personel
WHERE ad LIKE 'a%'
Çözüm 2:
SELECT
*
FROM (SELECT
'Öğrenci' AS Tur,
ad,
soyad,
ogrno,
tel,
0 AS maas,
'' AS adresi
FROM OgrenciTanim
UNION ALL
SELECT
'Personel' AS Tur,
ad,
soyadi AS soyad,
'' AS ogrno,
tel,
maas,
adresi
FROM Personel) AS Rehber
WHERE ad LIKE 'a%'
Tepkiniz Nedir?