PostgreSQL Birlik, Birlik ALL Örneklerle
⚡ Akıllı Özet
PostgreSQL UNION, iki veya daha fazla SELECT sorgusunun sonuçlarını tek bir sonuç kümesinde birleştirir ve yinelenen satırları kaldırır; UNION ALL ise her satırı koruyarak, yinelenen satırların önemli olmadığı durumlarda daha hızlı bir seçenek sunar.
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ı aynı sayıda sütun döndürmelidir.
- İ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ü yinelenen değerleri döndürmediğinden, UNION DISTINCT kullanımının sonuçlar üzerinde hiçbir etkisi olmayacaktır.
PostgreSQL sendika
UNION operatörü, tıpkı şu şekilde olduğu gibi, yinelenenleri kaldırır: AYRI SEÇ Evet, öyle. Bunu gösterelim. Demo adında, aşağıdaki tabloları içeren 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ü yinelenen değerleri 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 SELECT sorgusu da eşit sayıda ifade içermelidir.
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, Union All ne zaman kullanılır?
Benzer yapıya sahip ancak bir nedenle ayrılmış birden fazla tablonuz olduğunda UNION operatörünü kullanın. Yinelenen kayıtları kaldırmanız veya ortadan kaldırmanız gerektiğinde faydalıdır.
Yinelenen kayıtları kaldırmanız veya ortadan kaldırmanız gerekmediğinde UNION ALL operatörünü kullanın.
pgAdmin'i kullanma
Şimdi bu üç işlemin pgAdmin kullanılarak nasıl gerçekleştirildiğine bakalım.
Nasıl Kullanılır? PostgreSQL pgAdmin'i Kullanarak Birlik
Aşağıda, nasıl kullanılacağına dair adım adım bir süreç yer almaktadır. PostgreSQL pgAdmin aracılığıyla BİRLİK:
) 1 Adım pgAdmin hesabınıza giriş yapın.
) 2 Adım Soldaki gezinme çubuğundan Veritabanları'na, ardından Demo'ya tıklayın.
) 3 Adım 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.
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, ardından Demo'ya 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.
Bu Eğitimde kullanılan Veritabanını İndirin


















