UNION / UNION ALL / INTERSECT / EXCEPT (MINUS)
Oracle
-- Tekrarsız birleşim
SELECT il FROM musteri
UNION
SELECT il FROM tedarikci;
-- Kesişim ve fark (Oracle'da EXCEPT yerine MINUS)
SELECT il FROM musteri INTERSECT SELECT il FROM tedarikci;
SELECT il FROM musteri MINUS SELECT il FROM tedarikci;Küme operatörleri iki sorgunun sonuç kümelerini birleştirir. UNION tekrarları eler (yavaş), UNION ALL hepsini korur (hızlı), INTERSECT ortak satırları, fark operatörü yalnız ilk kümedeki satırları döndürür. Oracle fark için standart EXCEPT yerine MINUS kelimesini kullanır (21c'den beri EXCEPT de vardır).
PostgreSQL
SELECT il FROM musteri
UNION
SELECT il FROM tedarikci;
SELECT il FROM musteri INTERSECT SELECT il FROM tedarikci;
SELECT il FROM musteri EXCEPT SELECT il FROM tedarikci;PostgreSQL standart UNION, UNION ALL, INTERSECT ve EXCEPT'i tam destekler (fark için MINUS değil EXCEPT). Her operatörün ALL biçimi (INTERSECT ALL, EXCEPT ALL) tekrar sayısını koruyarak çalışır. Sütun sayısı ve tipleri uyumlu olmalıdır.
MySQL
SELECT il FROM musteri
UNION
SELECT il FROM tedarikci;
-- INTERSECT/EXCEPT MySQL 8.0.31+ ve MariaDB 10.3+ ile gelir
SELECT il FROM musteri INTERSECT SELECT il FROM tedarikci;MySQL uzun süre yalnız UNION / UNION ALL destekledi; INTERSECT ve EXCEPT ancak MySQL 8.0.31 (MariaDB 10.3) ile eklendi. Eski sürümlerde kesişim için INNER JOIN/EXISTS, fark için LEFT JOIN ... IS NULL veya NOT EXISTS kullanılır.
SQL Server
SELECT il FROM musteri
UNION
SELECT il FROM tedarikci;
SELECT il FROM musteri INTERSECT SELECT il FROM tedarikci;
SELECT il FROM musteri EXCEPT SELECT il FROM tedarikci;SQL Server standart UNION, UNION ALL, INTERSECT ve EXCEPT'i (2005+) destekler; fark operatörü EXCEPT'tir (MINUS değil). INTERSECT/EXCEPT NULL değerleri eşit kabul ederek satır karşılaştırması yapar.
MongoDB
// En yakın karşılık: $unionWith (MongoDB 4.4+)
db.musteri.aggregate([
{ $project: { il: 1, _id: 0 } },
{ $unionWith: { coll: "tedarikci",
pipeline: [ { $project: { il: 1, _id: 0 } } ] } },
{ $group: { _id: "$il" } } // UNION (tekrarsız) etkisi
])MongoDB 4.4+ $unionWith aşaması iki koleksiyonun sonuçlarını birleştirir (UNION ALL benzeri). Tekrarları elemek için sonrasında $group ile teklenir. INTERSECT/EXCEPT'in doğrudan karşılığı yoktur; $lookup veya küme operatörleriyle ($setIntersection, $setDifference) modellenir.
Redis
# Set veri tipiyle küme işlemleri:
SUNION il_musteri il_tedarikci # birleşim
SINTER il_musteri il_tedarikci # kesişim
SDIFF il_musteri il_tedarikci # farkRedis'te SQL yoktur ama Set (küme) veri tipi doğal küme işlemleri sunar: SUNION (birleşim), SINTER (kesişim), SDIFF (fark) ve bunların sonucu saklayan STORE biçimleri. Bu, sorgu sonuçlarını değil önceden kümelenmiş üyeleri işler.
Elasticsearch
# Doğrudan küme operatörü yoktur.
# Birleşim için tek sorguda çoklu indeks aranır:
GET musteri,tedarikci/_search
{ "query": { "match_all": {} } }Elasticsearch UNION/INTERSECT/EXCEPT sunmaz. Birleşim etkisi birden çok index'i virgülle sorgulayarak elde edilir; kesişim ve fark için bool sorgusunun must/should/must_not koşulları veya uygulama tarafı küme mantığı kullanılır.