Tabloları ve sorguları birleştirme

Tabloları ve sorguları birleştirme

Önemli : Bu makale makine çevisidir. Bkz. yasal uyarı. Bu makalenin İngilizce sürümüne buradan ulaşabilirsiniz.

Birden çok veri kaynağından bir Access sorgusunda eklediğinizde, istediğiniz görmek için nasıl veri kaynakları için birbirleriyle üzerinde dayalı kayıtları sınırlamak için birleştirmeler kullanın. Sorgu sonuçlarında bir kayıt kaynaklarını kayıtlarından her çifti dönüşür birleştirmeler her iki veri kaynaklarından kayıtları birleştirmek için de.

Bu makalede farklı birleştirme türleri ele alınmakta ve bunları bir sorguda nasıl kullanacağınız gösterilmektedir. Varsayılan olarak, zaten varsa ilişki sorguda kullandığınız iki veri kaynağı arasındaki birleştirme otomatik olarak oluşturulur. Açıkça birbirine karşılık gelen alanlar varsa birleştirme de oluşturulur. Otomatik olarak oluşturulan bir birleşim silebilirsiniz. Bu makalede nasıl oluşturulacağı dahil olmak üzere, tablo ilişkileri hakkında temel bilgiler sağlar.

Not : Tabloları birleştirme ve her ikisi de katılabilirsiniz aynı şekilde sorguları katılabilirsiniz.

Bu makalede

Genel bakış

Birleştirme türleri

Ortak bir değer birleştirilen tabloların ikisinde bulunan satırları gösterme

Bir tablodaki tüm satırları ve diğer tablodaki karşılık gelen satırları gösterme

Her iki tablodaki tüm satırları gösterme ve ortak bir değer bulunduğu katılma

Çapraz birleştirmeler

Tabloları alan değerlerinin eşit olmayışına göre birleştirme

Birleştirmeyi silme

Genel bakış

Bir veritabanı tabloları birbirleriyle mantıksal ilişkiler size aittir veri topluluğudur. İlişkiler ortak olan alanlara göre tabloları bağlanmak için kullanın. Tablo ilişkileri herhangi bir sayıda parçası olabilir, ancak her ilişkinin her zaman tam olarak iki tablo bulunur. Sorguda, ilişki Katıl temsil edilir.

Sorguya tablo eklediğinizde, Access tanımlanan tablolar arasında ilişkiler dayalıdır birleştirmeler oluşturur. Önceden tanımlanmış ilişkileri göstermeyen olsa bile, sorgularda birleştirmeler el ile oluşturabilirsiniz. Bir sorgu için veri kaynakları olarak diğer sorguları (yerine veya tabloları yanı sıra) kullanırsanız, birleştirmeler kaynağı sorguları ve arasındaki de bu sorgular ve veri kaynakları olarak kullandığınız herhangi bir tablo oluşturabilirsiniz.

Bunlar verileri sorgu işlemlerinde dahil edilecek eşleşmelidir kuralları kurmak o birleştirmeler sorgu ölçütü benzer şekilde davranır. Ölçüt farklı olarak, tek bir satır oluşturmak üzere bir kayıt kümesindeki her birleşim koşulu sağlayan satırları çifti birleştirilecek birleştirmeler da belirtin.

Dört temel birleştirme türleri vardır: iç birleştirmeler, dış birleşimler, çapraz birleştirmeler ve eşit olmayan birleştirmeler. Bu makalede, her tür ve nasıl birleşimler oluşturmak kullandığınız neden her kullanabileceğiniz, birleştirme türü araştırır.

Birleşimler ile sorgular arasındaki ilişki, tablolar ile ilişkiler arasındakine benzer: Sahip oldukları ortak veri değerlerine dayanarak iki kaynaktaki verilerin nasıl birleştirilebileceğinin bir göstergesidir. Aşağıdaki resimde sorgu Tasarım Görünümü'nde bir birleşim verilmektedir ve iletişim kutusunda birleşimin özellikleri açıktır:

Birleştirme Özellikleri kutusu.

Tablolar arasında bu satır Katıl temsil eder. Bir birleşim açmak için çift tıklatın (çizilen) Birleştirme özellikleri iletişim kutusu ve gözden geçirme veya değiştirme birleştirme.

Birleşimler bazen yönlüdür. İletişim kutusunun bu alanı, birleşimde hangi tablonun hangisi olduğunu ve tabloları birleştirmek için hangi alanların kullanıldığını gösterir.

Bu alan birleştirme türünü belirler: 1. seçenek iç birleştirme, 2. seçenek sol dış birleştirme ve 3. seçenek de sağ dış birleştirmedir.

Her iki tablodan alanlar kullanılabilir ve belirli bir göreve ilişkin veriler her birinden görüntülenir. İç birleştirmede, başka hiçbir veri dahil edilmez. Dış birleştirmede, bir tablodaki ilişkili olmayan kayıtlar da sorgu sonuçlarına dahil edilir.

Sayfanın Başı

Birleştirme türleri

Dört temel birleştirme türü vardır: iç birleştirmeler, dış birleştirmeler, çapraz birleştirmeler ve eşit olmayan birleştirmeler. Çapraz birleştirmeler ve eşit olmayan birleştirmeler nadir olarak kullanılan gelişmiş birleştirme türleri olmasına karşın, birleştirmelerin çalışma şeklini tam olarak anlamak için bunları da bilmelisiniz.

İç birleştirmeler: Her iki tablodan yalnızca ilişkili veriler birleştirilir

İç birleştirme, Access'in bir tablonun verilerini ancak, ilişkili tabloda karşılık gelen veriler varsa (ve tersi durumda) dahil ettiği birleştirme türüdür. Çoğu zaman iç birleştirmeleri kullanırsınız. Bir birleştirme oluşturup da türünü belirtmediğinizde, Access iç birleştirme kullanmak istediğinizi varsayar. İç birleştirmelerin yararlı olmasının nedeni, iki kaynaktan alınan verileri paylaşılan değerlere dayalı olarak birleştirmenize izin vermesidir; bu nedenle, ancak bütün bir resim olduğunda verileri görebilirsiniz.

Dış birleştirmeler: Tüm ilişkili veriler birleştirilir ve bir tablodaki kalan kayıtların tümü eklenir

Dış birleştirme iç birleştirmeye benzer, ancak tabloların birinden kalan satırları da ekler. Dış birleştirmeler yönlüdür: Sol dış birleştirme sol tablodan (birleşimdeki ilk tablo) tüm kayıtları içerir ve sağ dış birleştirme sağ tablodan (birleşimdeki ikinci tablo) tüm kayıtları içerir.

Tam dış birleştirmeler: Tüm veriler, uygulanabilir olduğunca birleştirilir

Bazı sistemlerde, dış birleştirme her iki tablodan tüm satırları kapsayabilir ve satırlar birbirine karşılık geldiğinde birleştirilir. Buna tam dış birleştirme adı verilir ve Access bunları açıkça desteklemez. Ancak, aynı etkiyi elde etmek için bir çapraz birleştirme ve ölçütleri kullanabilirsiniz.

Çapraz birleştirmeler: Tüm veriler, her olası yolla birleştirilir

Çapraz birleştirme çoğu zaman, bir sorguya iki tablo ekleyip bunları birleştirmeyi unutmanın yan etkisidir. Access bu durumu, bir tablodaki her kaydı diğer tablodan her kayıtla birleştirilmiş olarak (her olası kayıt birleşimi) görmek istediğiniz şeklinde yorumlar. Hiçbir veri birleştirilemediğinden, bu birleşim türü nadir olarak yararlı sonuçlar verir. Ancak, çapraz birleştirmenin tam olarak ihtiyacınızı karşıladığı birkaç durum vardır.

Eşit olmayan birleştirmeler: Normal birleştirme gibidir, ancak satırları birleştirmek için farklı bir karşılaştırma kullanır

Eşit olmayan birleştirmeler, değerleri karşılaştırmak ve verilerin birleştirilip birleştirilmeyeceğini ve nasıl birleştirileceğini belirlemek için eşittir işaretinden (=) başka bir işleç kullanır. Eşit olmayan birleştirmeler açıkça desteklenmez, ancak aynı etkiyi elde etmek üzere bir çapraz birleştirme ve ölçütleri kullanabilirsiniz.

Ortak bir değer birleştirilen tabloların ikisinde bulunan satırları gösterme

Yalnızca, birleştirilen alanda eşleşen değerleri bulunan satırları göstermek isterseniz, iç birleştirme kullanırsınız. Access iç birleştirmeleri otomatik olarak oluşturur.

İç birleştirmeler Katıl en yaygın türüdür. Bunlar bu satırları birleştirilen birinden sorgu söyleyin tablo satırları ve diğer tabloda, birleştirilmiş alanlarda verilere dayalı karşılık gelir. İç birleştirme ile bir sorguyu çalıştırdığınızda, yalnızca ortak bir değer birleştirilen tabloların ikisinde bulunan satırları sorgu işlemlerinde dahil edilir.

Nasıl iç birleştirme kullanırım?

Çoğu zaman, iç birleştirme kullanmak için bir şey yapmanız gerekmez. Sorguya eklediğiniz alanların zaten ilişkileri varsa, tabloları eklediğinizde Access, her bir ilişkili tablo çifti arasında otomatik olarak bir iç birleştirme oluşturur. başvuru bütünlüğü zorunlu tutulursa, Access ayrıca, birleşim çizgisinin üstünde, bir-çok ilişkisinin "bir" tarafındaki tabloyu göstermek için "1" ve "çok" tarafındaki tabloyu göstermek için de sonsuz simgesini () görüntüler.

İlişkiler oluşturmadıysanız bile, Access iki tabloyu sorguya ekleyin ve bu tabloları her aynı olan bir alana veya uyumlu veri türü ve birleştirme alanlarını birini olduğu birincil anahtarotomatik olarak iç birleştirmeler oluşturur. Bilgi tutarlılığını zorunlu değildir, çünkü bu durumda, "bir" ve "çok" sembolleri görüntülenmez.

Sorgunuza sorguları eklemek ve bu sorgular arasındaki ilişkileri oluşturmadıysanız, Access sorguları ve tablolar arasında veya bu sorguları İç birleşimler otomatik olarak oluşturmaz. Genellikle, bunları kendiniz oluşturmanız. İç birleştirme alanı bir veri kaynağından bir alanı için başka bir veri kaynağı üzerinde sürükleyerek oluşturursunuz. Access birleştirme oluşturuldu göstermek için iki alan arasında bir çizgi görüntüler.

İç birleştirme için SQL sözdizimi

İç birleştirmeler SQL'de, aşağıda görüldüğü gibi FROM yan tümcesinde belirtilir:

GELEN tablo1 INNER JOIN tablo2 ON tablo1. alan1 tablo2 karşılaştırın. alan2

INNER JOIN işleminin bölümleri:

Bölüm

Açıklama

tablo1, tablo2

Kayıtların birleştirileceği tabloların adı.

alan1, alan2

Birleştirilen alanların adı. Alanlar sayısal değilse, aynı veri türü olmalı ve aynı türde veriler içermelidir, ancak alanların aynı ada sahip olması gerekmez.

Karşılaştırma

Herhangi bir ilişkisel karşılaştırma işleci: "=," "<," ">," "<=," ">=" veya "<>."

İç birleştirme sözdizimi hakkında daha fazla bilgi için INNER JOIN işlemikonusuna bakın.

Sayfanın Başı

Bir tablodaki tüm satırları ve diğer tablodaki karşılık gelen satırları gösterme

Birleştirmeyi her iki tarafındaki satırları bazılarını tam olarak karşılık rağmen dış birleşimler sorgu, bildirin, sorguyu tüm bir tablodaki satırları ve diğer tablodaki ortak bir değer birleşimin her iki tarafa paylaşma olan satırları içermelidir.

Dış birleştirmeler sol dış birleştirme veya sağ dış birleştirme olabilir. Bir sol dış birleştirmede, sorgu SQL ifadesi FROM yan tümcesinde ilk tablodan tüm satırları ve diğer tablodan yalnızca birleşen alanın her iki tabloda ortak olan değerleri içerdiği satırları içerir. Bir sağ dış birleştirmede, sorgu SQL ifadesi FROM yan tümcesinde ikinci tablodan tüm satırları ve diğer tablodan yalnızca birleşen alanın her iki tabloda ortak olan değerleri içerdiği satırları içerir.

Not : Ayrıca, hangi sol veya sağ tabloyla verilen birleştirme birleştirmeyi çift tıklatıp ardından Birleştirme özellikleri iletişim kutusunda arıyorsunuz tablosudur kolayca anlayabilirsiniz. Ayrıca SQL görünümüne geçin ve FROM yan tümcesi inceleyin.

Dış birleştirmenin bir tarafındaki satırlardan bazılarının diğer tabloda karşılığı olan satırlar bulunmayacağından, satırlar karşılık gelmediğinde bu diğer tablodaki sorgudan döndürülen alanlardan bazıları boş kalacaktır.

Nasıl dış birleştirme kullanırım?

Dış birleştirmeyi, varolan bir iç birleştirmede değişiklik yaparak oluşturursunuz. Mevcut bir iç birleştirme yoksa, bir iç birleştirme oluşturur ve sonra da bunu dış birleştirmeye dönüştürürsünüz.

İç birleştirmeyi dış birleştirmeye dönüştürme

  1. Sorgu Tasarım görünümünde, değiştirmek istediğiniz birleştirmeyi çift tıklatın.

    Birleştirme Özellikleri iletişim kutusu görüntülenir.

  2. Birleştirme özellikleri iletişim kutusunda, Seçenekler seçenek 2 listelenen ve seçenek 3unutmayın.

  3. Kullanmak istediğiniz seçeneğe ve ardından Tamam'a tıklayın.

  4. Access birleştirmeyi görüntüler ve bir ok gösterir; bu okun yönü, tüm satırların ekleneceği veri kaynağından, yalnızca birleştirme koşuluna uyan satırların ekleneceği veri kaynağına doğrudur.

Belirsiz dış birleştirmeler

LEFT JOIN ve iç birleştirme içeren sorgu oluşturursanız, Access hangi belirleme mümkün olmayabilir katılma ilk gerçekleştirilecek işlem. Sonuçları left JOIN veya iç birleştirme ilk gerçekleştirilip bağlı olarak farklı olduğundan, Access bir hata iletisi görüntülenir:

Bu hatayı düzeltmek için böylece hangi ilk olarak birleştirmenin Temizle sorguyu değiştirmeniz gerekir.

Dış birleştirme için SQL sözdizimi

Dış birleştirmeler SQL'de, aşağıda görüldüğü gibi FROM yan tümcesinde belirtilir:

Table1 TABLOSUNDAKİ [LEFT | DOĞRU] JOIN tablo2
üzerinde table1.field1 tablo2.alan2 karşılaştırma

LEFT JOIN ve RIGHT JOIN işlemlerinin bölümleri:

Bölüm

Açıklama

tablo1, tablo2

Kayıtların birleştirileceği tabloların adı.

alan1, alan2

Birleştirilen alanların adı. Alanlar aynı veri türü olmalı ve aynı türde veriler içermelidir, ancak alanların aynı ada sahip olması gerekmez.

Karşılaştırma

Herhangi bir ilişkisel karşılaştırma işleci: "=," "<," ">," "<=," ">=" veya "<>."

Dış birleştirme sözdizimi hakkında daha fazla bilgi için LEFT JOIN, RIGHT JOIN işlemlerikonusuna bakın.

Sayfanın Başı

Her iki tablodaki tüm satırları gösterme ve ortak bir değer bulunduğu katılma

İki tablodaki tüm satırları gösterme ve bunları ortak değerleri temel alarak katılmak istediğiniz zaman, tam bir dış birleştirme kullanın. Tam dış birleştirmeler Access açıkça desteklemez, ancak bir birleşim sorgusu kullanarak aynı etkiyi elde edebilirsiniz. Aşağıdaki yordam, bunu, ancak birleşim sorguları hakkında daha fazla bilgi isterseniz Ayrıca bkz bölümüne bakın açıklar.

Tam dış birleştirme gerçekleştirmek üzere bir birleşim sorgusu kullanmak için:

  1. Tam bir dış birleştirme için kullanmak istediğiniz alanda, bir sol dış birleştirmeye sahip bir sorgu oluşturun.

  2. Giriş sekmesinde, Görünümler grubunda, Görünüm'ü tıklatın ve sonra da SQL Görünümü'nü tıklatın.

  3. SQL kodunu kopyalamak için CTRL + C tuşlarına basın.

  4. FROM yan tümcesinin sonundaki noktalı virgülü silin ve sonra ENTER tuşuna basın.

  5. UNION yazın ve ENTER tuşuna basın.

    Not : Tam bir dış birleştirme gerçekleştirmek için bir birleşim sorgusu kullandığınızda, ALL anahtar sözcüğünü kullanmayın.

  6. Adım 3'te kopyalanan SQL kodunu yapıştırmak için CTRL + V tuşlarına basın.

  7. Yapıştırdığınız kodda, LEFT JOIN'i RIGHT JOIN olarak değiştirin.

  8. İkinci FROM yan tümcesi ve ENTER tuşuna BASIN, sonundaki noktalı virgülü silin.

  9. FROM tümcesinde (sol tablo) listelenen ilk tablodaki birleştirme alanının değerini NULL olarak belirleyen bir WHERE tümcesi ekleyin.

    Örneğin FROM tümcesi aşağıdaki gibi ise:

    FROM Products RIGHT JOIN [Order Details] 
    ON Products.ID = [Order Details].[Product ID]

    Aşağıdaki WHERE yan tümcesini ekleyebilirsiniz:

    WHERE Products.ID IS NULL

  10. Birleşim sorgusunun sonunu belirtmek için, WHERE tümcesinin sonuna bir noktalı virgül (;) girin.

  11. Tasarım sekmesinin Sonuçlar grubunda Çalıştır'a tıklayın.

Çapraz birleştirmeler

Açıkça Accessiçinde gösterilmez çapraz birleştirmeler iç ve dış birleştirmeler farklı olan. Çapraz birleştirme içinde bir tablodaki her satır ne çapraz ürün veya Kartezyen çarpımını olarak adlandırılır sonucu olan başka bir tablodaki her satır ile birleştirilir. Açıkça alanına bağlı değilseniz, tabloları olan bir sorguyu çalıştırmak istediğiniz zaman bir çapraz ürün sonuç olur. Genellikle amaçlanmayan çapraz birleştirmeler, ancak burada bunlar kullanışlı olabilir durumlar da vardır.

Neden çapraz birleştirme kullanırım?

Satırlar arasında iki tablo veya sorgu her olası birleşimini incelemek isterseniz, çapraz birleştirme kullanın. Örneğin, işinizi muhteşem bir yıl aldığını ve müşterilerinize indirimleri vermek istediğiniz için varsayalım. Her müşterinin satınalmaları toplayan bir sorgu oluşturma, çeşitli olası indirim yüzdeleri içeren küçük bir tablo oluşturun ve çapraz birleştirme gerçekleştirir başka bir sorguda iki birleştirme. Sizin için her müşterinin kuramsal indirimleri kümesi görüntüleyen sorgu ile sonlanır.

Nasıl çapraz birleştirme kullanırım?

Çapraz birleştirme tabloları veya sorguları sorguda yer ve değil her tablo için en az bir açık birleştirme oluştururken veya sorgu dilediğiniz zaman oluşturulur. Access her tabloyu veya sorguyu açıkça herhangi bir tablo veya sorgu sonuçlarında her satır için alanına bağlı olmayan tablosundaki her satır birleştirir. Önceki paragraftaki indirim senaryoyu göz önünde bulundurun. 91 müşteriler varsa ve beş olası indirim yüzdeleri görünmesini istediğinizi varsayalım. Çapraz birleştirme 455 satırlar (91 ve 5 ürün) üretir.

Amaçlanmayan çapraz birleştirmeler Tahmin edebileceğiniz gibi çok büyük sayılar satırların sorgu sonuçlarında oluşturabilirsiniz. Ayrıca, aslında her satırı her iki satırdan ile birleştirmek düşünmüyorsanız, sonuçlarda görüntülenecek birleştirilmiş satırları çoğunu anlam ifade etmez çünkü bu sonuçları genellikle anlamsız. Son olarak, amaçlanmayan çapraz birleştirmeler kullanan sorguları çalıştırmak için çok uzun zaman alabilir.

Sorgu Tasarım görünümünde amaçlanmayan çapraz birleştirme
Bir amaçlanmayan çapraz sorgu Tasarım görünümünde katılın.

1. daire içine alınmış alanlar birbirine alanına katılmış olması.

Amaçlanmayan çapraz ürün
Yukarıda çizilen amaçlanmayan çapraz birleştirme tarafından döndürülen çapraz ürün.

1. kayıtlar çok fazla sayıda dikkat edin.

Düzeltilen sorgu sonucu
Doğru Katıl oluşturulduktan sonra sonuçları.

1. kayıt sayısını daha küçük olduğuna dikkat edin.

Sayfanın Başı

Tabloları alan değerlerinin eşit olmayışına göre birleştirme

Birleştirmeler, birleştirilen alanların eşdeğerliğine dayalı olmak zorunda değildir. Bir birleştirme, büyüktür (>), küçüktür (<) veya eşit değildir (<>) gibi herhangi bir karşılaştırma işlecine dayalı olabilir. Eşdeğerliğe dayalı olmayan birleştirmelere eşit olmayan birleştirmeler denir.

İki veri kaynağının satırlarını, eşit olmayan alan değerleri temelinde birleştirmek isterseniz, eşit olmayan birleştirme kullanırsınız. Tipik olarak, eşit olmayan birleştirmeler; büyüktür (>), küçüktür (<), büyük veya eşittir (>=) ya da küçük veya eşittir (<=) karşılaştırma işleçlerinden birine göre dayalıdır. Eşit değildir (<>) işlecine dayalı olan eşit olmayan birleştirmeler, neredeyse çapraz birleştirmeler kadar çok satır döndürebilir ve sonuçlarının yorumlanması güç olabilir.

Nasıl eşit olmayan birleştirme kullanırım?

Tasarım Görünümü'nde eşit olmayan birleştirmeler desteklenmez. Bunları kullanmak isterseniz, SQL görünümü kullanarak yapmanız gerekir. Bununla birlikte, siz birleştirme Tasarım Görünümü'nde oluşturma, SQL Görünümü'ne geçin, eşittir (=) karşılaştırma işleci Değiştir bulabilir ve işleç için kullanmak istediğiniz. Bunu yaptıktan sonra karşılaştırma işleci yedeklemek için ilk değişikliğe SQL Görünümü'nde (=) eşitse, yalnızca sorguyu Tasarım görünümünde yeniden açabilirsiniz.

Birleştirmeyi silme

Access, istemediğiniz bir birleştirmeyi otomatik olarak oluşturursa veya siz yanlışlıkla bir birleştirme oluşturursanız (örneğin, veri türleri farklı iki alan arasında birleştirme), bu birleştirmeyi silebilirsiniz.

  1. Sorgu tasarım kılavuzunda, kaldırmak istediğiniz birleştirmeyi tıklatın.

  2. DELETEtuşuna basın.

-veya-

  • Sorgu Tasarım kılavuzunda, kaldırmak istediğiniz birleştirmeyi sağ tıklatın ve sonra Silseçeneğini tıklatın.

Sayfanın Başı

Not : Makine Çevirisi Yasal Uyarısı: Bu makale, insan müdahalesi olmadan bir bilgisayar sistemi tarafından çevrilmiştir. Microsoft bu makine çevirilerini İngilizce bilmeyen kullanıcıların Microsoft ürünleri, hizmetleri ve teknolojileriyle ilgili içeriklerden yararlanmasına yardımcı olmak için sunar. Bu makale makine çevirisi olduğundan sözcük, cümle dizilimi ve gramer hataları içerebilir.

Ayrıca Bkz:

Ekleme sorgusu kullanarak bir tabloya kayıt ekleme

Birleştir birleşim sorgusu kullanarak çeşitli sonuçlarını sorguları seçin

Birden çok tablolara bir sorgu oluşturun

Oluşturma, düzenleme veya tablo ilişkisini silme

Yeteneklerinizi geliştirin
Eğitimleri keşfedin
Yeni özellikleri ilk olarak siz edinin
Office Insider Programına Katılın

Bu bilgi yararlı oldu mu?

Görüşleriniz için teşekkür ederiz!

Geri bildiriminiz için teşekkürler! Office destek temsilcilerimizden biriyle görüşmeniz yararlı olabilir.

×