PostgreSQL Birlik, Birlik ALL Örneklerle
Nedir? PostgreSQL Birlik?
MKS PostgreSQL UNION operatörü, birden fazla SELECT ifadesinden gelen sonuç kümelerini tek bir sonuç kümesinde birleştirmek için kullanılır. SELECT ifadelerinin sonuçlarından gelen yinelenen satırlar ortadan kaldırılır. UNION operatörü iki koşul altında çalışır:
- SELECT sorguları benzer sayıda sorgu döndürmelidir ZORUNLU.
- İlgili tüm sütunların veri türleri uyumlu olmalıdır.
UNION operatörü normalde mükemmel şekilde normalleştirilmemiş ilgili tablolardaki verileri birleştirmek için kullanılır.
Sözdizimi
SELECT expression_1, expression_2, ... expression_n FROM tables [WHERE condition(s)] UNION SELECT expression_1, expression_2, ... expression_n FROM tables [WHERE condition(s)];
Yukarıdaki parametreler için bir açıklama:
İfade_1, ifade_2, … ifade_n, almanız gereken hesaplamalar veya sütunlardır.
Tablolar, kayıtları almanız gereken tablolardır.
WHERE koşulları, kayıtların alınması için karşılanması gereken koşullardır.
Not: UNION operatörü kopyaları döndürmediğinden UNION DISTINCT kullanımının sonuçlar üzerinde hiçbir etkisi olmayacaktır.
PostgreSQL sendika
UNION operatörü kopyaları kaldırır. Bunu gösterelim.
Aşağıdaki tabloların bulunduğu Demo adında bir veritabanımız var:
Kitap:
Fiyat:
Aşağıdaki komutu çalıştıralım:
SELECT id FROM Book UNION SELECT id FROM Price;
Komut aşağıdakini döndürecektir:
Kimlik sütunu hem Kitap hem de Fiyat tablolarında görünür. Ancak sonuçta yalnızca bir kez görünür. Sebebi şudur PostgreSQL UNION operatörü kopyaları döndürmez.
PostgreSQL Birlik Tümü
Bu operatör, birden fazla SELECT ifadesinin sonuç kümelerini kopyaları kaldırmadan birleştirir. Operatör, her SELECT ifadesinin benzer veri türlerinden oluşan sonuç kümelerinde benzer sayıda alana sahip olmasını gerektirir.
Sözdizimi:
SELECT expression_1, expression_2, ... expression_n FROM tables [WHERE condition(s)] UNION ALL SELECT expression_1, expression_2, ... expression_n FROM tables [WHERE condition(s)];
Yukarıdaki parametreler için bir açıklama:
İfade_1, ifade_2, … ifade_n, almanız gereken hesaplamalar veya sütunlardır.
Tablolar, kayıtları almanız gereken tablolardır.
WHERE koşulları, kayıtların alınması için karşılanması gereken koşullardır.
Not: Her iki ifadenin de eşit sayıda ifadesi olmalıdır.
Aşağıdaki tabloları kullanacağız:
Kitap:
Fiyat:
Aşağıdaki komutu çalıştırın:
SELECT id FROM Book UNION ALL SELECT id FROM price;
Aşağıdaki sonucu döndürmesi gerekir:
Kopyalar kaldırılmadı.
TARAFINDAN SİPARİŞ
MKS PostgreSQL UNION operatörü, sorgu sonuçlarını sıralamak için ORDER BY ifadesiyle birlikte kullanılabilir. Bunu göstermek için aşağıdaki tabloları kullanacağız:
Fiyat:
Fiyat2:
UNION operatörünün ORDER BY yan tümcesiyle birlikte nasıl kullanılacağını gösteren komut:
SELECT * FROM Price UNION SELECT * FROM Price2 ORDER BY price;
Komut aşağıdakini döndürecektir:
Kayıtlar fiyat sütununa göre sıralandı. Madde, kayıtları varsayılan olarak artan sırada sıralar. Bunları azalan sırada sıralamak için DESC yan tümcesini aşağıda gösterildiği gibi ekleyin:
SELECT * FROM Price UNION SELECT * FROM Price2 ORDER BY price DESC;
Komut aşağıdakini döndürecektir:
Kayıtlar fiyat sütununa göre azalan şekilde sıralanmıştır.
Union ne zaman kullanılır ve Union all ne zaman kullanılır?
Benzer yapıya sahip ancak bir nedenden dolayı bölünmüş birden fazla tablonuz varsa UNION operatörünü kullanın. Yinelenen kayıtları kaldırmanız/ortadan kaldırmanız gerektiğinde bu iyidir.
Yinelenen kayıtları kaldırmanız/ortadan kaldırmanız gerekmediğinde UNION ALL operatörünü kullanın.
pgAdmin'i kullanma
Şimdi üç eylemin de pgAdmin kullanılarak nasıl gerçekleştirildiğini görelim.
Nasıl Kullanılır? PostgreSQL pgAdmin'i Kullanarak Birlik
Aşağıda, Nasıl Kullanılacağına İlişkin Adım Adım İşlem gösterilmektedir PostgreSQL pgAdmin'i Kullanarak Birlik
Aynısını pgAdmin aracılığıyla gerçekleştirmek için şunu yapın:
) 1 Adım Oturum aç
pgAdmin hesabınıza giriş yapın.
) 2 Adım Veritabanlarına tıklayın
- Soldaki gezinme çubuğundan Veritabanları'na tıklayın.
- Demo'yu tıklayın.
) 3 Adım Sorguyu yazın
Sorgu düzenleyicisine sorguyu yazın:
SELECT * FROM Price UNION SELECT * FROM Price2 ORDER BY price DESC;
) 4 Adım Yürüt düğmesine tıklayın.
Daha sonra Yürüt butonuna tıklayın. Aşağıdaki resimde gösterildiği gibi.
Aşağıdaki sonucu döndürmesi gerekir:
Birlik Tümü
) 1 Adım pgAdmin hesabınıza giriş yapın.
) 2 Adım
- Soldaki gezinme çubuğundan Veritabanları'na tıklayın.
- Demo'yu tıklayın.
) 3 Adım Sorgu düzenleyicisine sorguyu yazın:
SELECT id FROM Book UNION ALL SELECT id FROM price;
) 4 Adım Yürüt düğmesine tıklayın.
Aşağıdaki sonucu döndürmesi gerekir:
TARAFINDAN SİPARİŞ
UNION ALL operatörü, sonuç kümesindeki sonuçları sıralamak için ORDER BY deyimiyle birleştirilebilir. Örneğin:
SELECT id FROM Book UNION ALL SELECT id FROM price ORDER BY id;
Komut aşağıdakini döndürecektir:
Sonuçlar sipariş edildi.
ÖZET
- MKS PostgreSQL UNION operatörü birden fazla sonucu birleştirir SELECT ifadesi tek bir sonuç kümesinde.
- UNION operatörü yinelenen kayıtları döndürmez.
- Sonuçları sıralamak için ORDER BY cümlesiyle birleştirin.
- UNION ALL operatörü, birden fazla SELECT ifadesinin sonuçlarını tek bir sonuç kümesinde birleştirir.
- UNION ALL operatörü kopyaları kaldırmaz.

















