join işleci
Her tabloda belirtilen sütunların değerlerini eşleştirerek yeni bir tablo oluşturmak için iki tablonun satırlarını birleştirin.
Kusto Sorgu Dili (KQL), sonuçta elde edilen tablodaki şemayı ve satırları farklı şekillerde etkileyen birçok birleşim türü sunar. Örneğin, birleştirme inner
kullanırsanız, tabloda sol tabloyla aynı sütunlar ve sağ tablodaki sütunlar bulunur. En iyi performans için, bir tablo her zaman diğerinden küçükse, bunu işlecin sol tarafı join
olarak kullanın.
Aşağıdaki görüntü, her birleştirme tarafından gerçekleştirilen işlemin görsel bir gösterimini sağlar.
Syntax
LeftTable|
join
[ kind
=
JoinFlavor ] [ İpuçları ] (
RightTable)
on
Koşulları
Söz dizimi kuralları hakkında daha fazla bilgi edinin.
Parametreler
Ad | Tür | Gerekli | Açıklama |
---|---|---|---|
LeftTable | string |
✔️ | Satırları birleştirilecek olan dış tablo olarak da adlandırılan sol tablo veya tablosal ifade. olarak $left belirtilir. |
JoinFlavor | string |
Gerçekleştirilecek birleştirme türü: , , , , , fullouter , leftanti rightanti , leftsemi , rightsemi . rightouter leftouter inner innerunique Varsayılan değer: innerunique . Birleştirme tatları hakkında daha fazla bilgi için bkz . Dönüşler. |
|
İpuçları | string |
Satır eşleştirme işleminin ve yürütme planının davranışını denetleen Ad= Değeri biçiminde sıfır veya daha fazla boşlukla ayrılmış birleştirme ipucu. Daha fazla bilgi için bkz. İpuçları. |
|
RightTable | string |
✔️ | Satırlarının birleştirileceği iç tablo olarak da adlandırılan sağ tablo veya tablosal ifade. olarak $right belirtilir. |
Koşullar | string |
✔️ | LeftTable'dan gelen satırların RightTable'dan gelen satırlarla nasıl eşleşeceğini belirler. Eşleştirmek istediğiniz sütunların adı her iki tabloda da aynıysa ColumnName söz dizimini ON kullanın. Aksi takdirde, LeftColumn RightColumn== $right. söz dizimini ON $left. kullanın. Birden çok koşul belirtmek için "ve" anahtar sözcüğünü kullanabilir veya bunları virgülle ayırabilirsiniz. Virgül kullanırsanız, koşullar "ve" mantıksal işleci kullanılarak değerlendirilir. |
İpucu
En iyi performans için, bir tablo her zaman diğerinden küçükse birleştirmenin sol tarafı olarak kullanın.
İpuçları
İpucu tuşu | Değerler | Açıklama |
---|---|---|
hint.remote |
auto , left , local , right |
Bkz. Kümeler Arası Birleştirme |
hint.strategy=broadcast |
Küme düğümlerinde sorgu yükünü paylaşmanın yolunu belirtir. | Bkz. yayına katılma |
hint.shufflekey=<key> |
Sorgu, shufflekey verileri bölümleme anahtarını kullanarak küme düğümlerinde sorgu yükünü paylaşır. |
Bkz . karıştırma sorgusu |
hint.strategy=shuffle |
Strateji shuffle sorgusu, her düğümün verilerin bir bölümünü işlediği küme düğümlerinde sorgu yükünü paylaşır. |
Bkz . karıştırma sorgusu |
Name | Değerler | Açıklama |
---|---|---|
hint.remote |
auto , left , local , right |
|
hint.strategy=broadcast |
Küme düğümlerinde sorgu yükünü paylaşmanın yolunu belirtir. | Bkz. yayına katılma |
hint.shufflekey=<key> |
Sorgu, shufflekey verileri bölümleme anahtarını kullanarak küme düğümlerinde sorgu yükünü paylaşır. |
Bkz . karıştırma sorgusu |
hint.strategy=shuffle |
Strateji shuffle sorgusu, her düğümün verilerin bir bölümünü işlediği küme düğümlerinde sorgu yükünü paylaşır. |
Bkz . karıştırma sorgusu |
Not
Birleştirme ipuçları semantiğini join
değiştirmez ancak performansı etkileyebilir.
Döndürülenler
Dönüş şeması ve satırları birleştirme çeşidine bağlıdır. Birleştirme aroması kind anahtar sözcüğüyle belirtilir. Aşağıdaki tabloda desteklenen birleştirme tatları gösterilmektedir. Belirli bir birleşim çeşidine ilişkin örnekleri görmek için Join flavor sütunundaki bağlantıyı seçin.
Birleştirme lezzeti | Döndürülenler | Illüstrasyon |
---|---|---|
innerunique (varsayılan) | Sol taraftaki yinelenenleri kaldırma ile iç birleşim Şema: Eşleşen anahtarlar da dahil olmak üzere her iki tablodaki tüm sütunlar Satırlar: Sol tablodaki sağ tablodaki satırlarla eşleşen yinelenenleri kaldırılmış tüm satırlar |
|
Iç | Standart iç birleşim Şema: Eşleşen anahtarlar da dahil olmak üzere her iki tablodaki tüm sütunlar Satırlar: Yalnızca her iki tablodan eşleşen satırlar |
|
leftouter | Sol dış birleştirme Şema: Eşleşen anahtarlar da dahil olmak üzere her iki tablodaki tüm sütunlar Satırlar: Sol tablodaki tüm kayıtlar ve yalnızca sağ tablodan eşleşen satırlar |
|
sağdan | Sağ dış birleştirme Şema: Eşleşen anahtarlar da dahil olmak üzere her iki tablodaki tüm sütunlar Satırlar: Sağ tablodaki tüm kayıtlar ve yalnızca sol tablodan eşleşen satırlar |
|
fullouter | Tam dış birleştirme Şema: Eşleşen anahtarlar da dahil olmak üzere her iki tablodaki tüm sütunlar Satırlar: Her iki tablodaki eşleşmeyen hücreler null ile doldurulmuş tüm kayıtlar |
|
leftsemi | Sol yarı birleşim Şema: Sol tablodaki tüm sütunlar Satırlar: Sol tablodaki ve sağ tablodaki kayıtlarla eşleşen tüm kayıtlar |
|
leftanti , anti , leftantisemi |
Sol anti join ve yarı değişken Şema: Sol tablodaki tüm sütunlar Satırlar: Sol tablodaki ve sağ tablodaki kayıtlarla eşleşmeyen tüm kayıtlar |
|
rightsemi | Sağ yarı birleştirme Şema: Sağ tablodaki tüm sütunlar Satırlar: Sağ tablodaki sol tablodaki kayıtlarla eşleşen tüm kayıtlar |
|
rightanti , rightantisemi |
Sağ anti join ve yarı değişken Şema: Sağ tablodaki tüm sütunlar Satırlar: Sağ tablodaki, sol tablodaki kayıtlarla eşleşmeyen tüm kayıtlar |
Çapraz birleşim
KQL çapraz birleşim özelliği sağlamaz. Ancak yer tutucu anahtar yaklaşımını kullanarak çapraz birleştirme efekti elde edebilirsiniz.
Aşağıdaki örnekte, her iki tabloya da bir yer tutucu anahtar eklenir ve ardından iç birleşim işlemi için kullanılır ve çapraz birleşim benzeri bir davranış elde edilir:
X | extend placeholder=1 | join kind=inner (Y | extend placeholder=1) on placeholder
İlgili içerik
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin