Tavsiye, 2024

Editörün Seçimi

SQL'de JOIN ve UNION Arasındaki Fark

JOIN ve UNION, iki veya daha fazla ilişkinin verilerini birleştirmek için kullanılan SQL cümlecikleridir. Ancak elde edilen sonucun verilerini ve formatlarını birleştirme biçimleri farklılık gösterir. JOIN deyimi, sonuçta ortaya çıkan kayıtları oluşturmak için iki ilişkinin özelliklerini birleştirirken, UNION deyimi iki sorgunun sonucunu birleştirir. Aşağıda gösterilen karşılaştırma tablosu yardımıyla JOIN ve UNION arasındaki farkı tartışalım.

Karşılaştırma Tablosu

Karşılaştırma için temelKATILMAKBİRLİK
TemelJOIN, bazı ortak alanları veya nitelikleri paylaşan iki farklı ilişkide mevcut olan perdelerin niteliklerini birleştirir.BİRLİK sorguda mevcut olan ilişkilerin tekillerini birleştirir.
ŞartJOIN, dahil olan iki ilişki en az bir ortak özelliğe sahip olduğunda uygulanabilir.UNION, sorguda bulunan sütun sayısı aynı olduğunda ve karşılık gelen nitelikler aynı alana sahip olduğunda uygulanabilir.
TürleriİÇ, TAM (DIŞ), SOL KATIL, SAĞ KATIL.BİRLİK ve BİRLİĞİ TÜM.
EfektSonuçta ortaya çıkan tupllerin uzunluğu, ilgili ilişkilerin tupllarının uzunluğu ile karşılaştırıldığında daha fazladır.Sonuçta ortaya çıkan tüzüllerin sayısı, sorguda yer alan her ilişkide mevcut tüllerin sayısı ile karşılaştırıldığında daha fazladır.
Diyagram

JOIN'un tanımı

SQL'deki JOIN yan tümcesi, iki ilişkiden veya tablolardan gelen tupleri birleştirerek daha uzun bir tuple boyutuna neden olur. Elde edilen tuple, her iki ilişkiden de nitelikler içerir. Öznitelikler, aralarındaki ortak öznitelikler temelinde birleştirilir. SQL'deki JOIN'in farklı türleri INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN'dir.

INNER JOIN, her ikisi de arasında ortak bir özellik olduğu sürece, her iki tablodan gelen perdeleri birleştirir. LEFT JOIN, sol tablonun tüm başlıklarına ve sağ tablodaki eşleşen başlığa neden olur. RIGHT JOIN, tüm tablolara sağdaki tablodan ve yalnızca soldaki tablodan eşleşen sonlandırmadan sonuçlanır. FULL OUTER JOIN, her iki tabloda da eşleşen özelliklere sahip olsalar da olmasa da her iki tablodan da kaynaklanır.

INNER JOIN, JOIN ile aynıdır. Ayrıca INNER anahtar sözcüğünü bırakabilir ve INNER JOIN işlemini gerçekleştirmek için JOIN özelliğini kullanabilirsiniz.

UNION'un tanımı

BİRLİK, SQL'de ayarlanmış bir işlemdir. UNON iki sorgunun sonucunu birleştirir. UNION'ın sonucu, sorguda yer alan her iki ilişkideki delilleri içeriyor. Karşılanması gereken şartlar, iki ilişkideki BİRLİĞİ alır:

  1. İki ilişki aynı sayıda özelliğe sahip olmalıdır.
  2. İlgili özniteliğin etki alanları aynı olmalıdır.

BİRLİK ve BİRLİK TÜMÜ olan iki tür BİRLİK vardır. UNION kullanılarak elde edilen sonuç kopyaları içermez. Öte yandan, UNION ALL kullanılarak elde edilen sonuç yinelenendir.

SQL'de JOIN ve UNION Arasındaki Temel Farklılıklar

  1. JOIN ve UNION arasındaki temel fark, JOIN'in iki ilişkiden gelen tekilleri birleştirmesi ve sonuçtaki tekilleri her iki ilişkiden gelen öznitelikleri içermesidir. Öte yandan, UNION iki SELECT sorgusunun sonucunu birleştirir.
  2. JOIN maddesi, sadece ilgili iki ilişkinin her ikisinde de ortak olan en az bir niteliği olduğunda geçerlidir. Öte yandan, UNION, iki ilişki aynı sayıda özelliğe sahip olduğunda ve karşılık gelen özelliklerin etki alanları aynı olduğunda uygulanabilir.
  3. Dört tür JOIN INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN vardır. Ancak iki tür UNION, UNION ve UNION ALL vardır.
  4. JOIN'de, sonuçta ortaya çıkan demet, her iki ilişkiden gelen öznitelikleri içerdiğinden daha büyük boyuta sahiptir. Öte yandan, UNION'da sorguda mevcut olan her iki ilişkiden gelen demet dahil olmak üzere, sonuçların sayısı artmaktadır.

Sonuç:

Her ikisi de veri birleştirme işlemleri farklı durumlarda kullanılır. JOIN, ortak en az bir özelliğe sahip iki ilişkinin niteliklerini birleştirmek istediğimizde kullanılır. BİRLİK, sorguda mevcut olan iki ilişkinin tekillerini birleştirmek istediğimizde kullanılır.

Top