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:

PostgreSQL sendika

Fiyat:

PostgreSQL sendika

Aşağıdaki komutu çalıştıralım:

SELECT id
FROM Book
UNION
SELECT id
FROM Price;

Komut aşağıdakini döndürecektir:

PostgreSQL sendika

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:

PostgreSQL Birlik Tümü

Fiyat:

PostgreSQL Birlik Tümü

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:

PostgreSQL Birlik Tümü

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:

TARAFINDAN SİPARİŞ

Fiyat2:

TARAFINDAN SİPARİŞ

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:

TARAFINDAN SİPARİŞ

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:

TARAFINDAN SİPARİŞ

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

  1. Soldaki gezinme çubuğundan Veritabanları'na tıklayın.
  2. Demo'yu tıklayın.

Kullanım PostgreSQL pgAdmin'i Kullanarak Birlik

) 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.

Kullanım PostgreSQL pgAdmin'i Kullanarak Birlik

Aşağıdaki sonucu döndürmesi gerekir:

Kullanım PostgreSQL pgAdmin'i Kullanarak Birlik

Birlik Tümü

) 1 Adım pgAdmin hesabınıza giriş yapın.

) 2 Adım

  1. Soldaki gezinme çubuğundan Veritabanları'na tıklayın.
  2. Demo'yu tıklayın.

Kullanım PostgreSQL Union Tümü pgAdmin'i Kullanarak

) 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.

Kullanım PostgreSQL Union Tümü pgAdmin'i Kullanarak

Aşağıdaki sonucu döndürmesi gerekir:

Kullanım PostgreSQL Union Tümü pgAdmin'i Kullanarak

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:

Kullanım PostgreSQL SİPARİŞ BY pgAdmin'i Kullanarak

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.

Bu Eğitimde kullanılan Veritabanını İndirin

Bu yazıyı şu şekilde özetleyin: