sprzężenie wewnętrzne
Sprzężenie inner
jest podobne do standardowego sprzężenia wewnętrznego ze świata SQL. Rekord wyjściowy jest generowany za każdym razem, gdy rekord po lewej stronie ma ten sam klucz sprzężenia co rekord po prawej stronie.
Składnia
LeftTable|
join
kind=inner
[ Wskazówki ] RightTableon
Warunki
Dowiedz się więcej o konwencjach składniowych.
Parametry
Nazwa | Typ | Wymagane | Opis |
---|---|---|---|
LeftTable | string |
✔️ | Lewa tabela lub wyrażenie tabelaryczne, czasami nazywane tabelą zewnętrzną, której wiersze mają być scalane. Oznaczono jako $left . |
Wskazówki | string |
Zero lub więcej wskazówek sprzężenia rozdzielanego spacjami w postaci wartości nazwy= , która kontroluje zachowanie operacji dopasowania wiersza i planu wykonywania. Aby uzyskać więcej informacji, zobacz Wskazówki. |
|
RightTable | string |
✔️ | Właściwa tabela lub wyrażenie tabelaryczne, czasami nazywane tabelą wewnętrzną, której wiersze mają być scalane. Oznaczono jako $right . |
Warunki | string |
✔️ | Określa, jak wiersze z tabeli LeftTable są dopasowywane do wierszy z tabeli RightTable. Jeśli kolumny, które chcesz dopasować, mają taką samą nazwę w obu tabelach, użyj składni ON ColumnName. W przeciwnym razie użyj składni ON $left. LeftColumn RightColumn== $right. . Aby określić wiele warunków, możesz użyć słowa kluczowego "and" lub oddzielić je przecinkami. Jeśli używasz przecinków, warunki są oceniane przy użyciu operatora logicznego "i". |
Porada
Aby uzyskać najlepszą wydajność, jeśli jedna tabela jest zawsze mniejsza niż druga, użyj jej jako lewej strony sprzężenia.
Wskazówki
Nazwa parametrów | Wartości | Opis |
---|---|---|
hint.remote |
auto , left , local , right |
Zobacz sprzężenia między klastrami |
hint.strategy=broadcast |
Określa sposób udostępniania obciążenia zapytania w węzłach klastra. | Zobacz dołączanie do emisji |
hint.shufflekey=<key> |
shufflekey Zapytanie współudzieli obciążenie zapytania w węzłach klastra przy użyciu klucza do partycjonowania danych. |
Zobacz zapytanie shuffle |
hint.strategy=shuffle |
shuffle Zapytanie strategii współdzieli obciążenie zapytania w węzłach klastra, gdzie każdy węzeł przetwarza jedną partycję danych. |
Zobacz zapytanie shuffle |
Zwraca
Schemat: Wszystkie kolumny z obu tabel, w tym pasujące klucze.
Wiersze: tylko pasujące wiersze z obu tabel.
Przykład
let X = datatable(Key:string, Value1:long)
[
'a',1,
'b',2,
'b',3,
'k',5,
'c',4
];
let Y = datatable(Key:string, Value2:long)
[
'b',10,
'c',20,
'c',30,
'd',40,
'k',50
];
X | join kind=inner Y on Key
Dane wyjściowe
Klucz | Wartość1 | Klucz1 | Wartość2 |
---|---|---|---|
b | 3 | b | 10 |
b | 2 | b | 10 |
c | 4 | c | 20 |
c | 4 | c | 30 |
k | 5 | k | 50 |
Uwaga
- (b,10) z prawej strony, został dwukrotnie przyłączony: z obu (b,2) i (b,3) po lewej stronie.
- (c,4) po lewej stronie, został sprzężony dwa razy: z obu (c,20) i (c,30) po prawej stronie.
- (k,5) od lewej i (k, 50) z prawej strony został przyłączony raz.
Zawartość pokrewna
- Dowiedz się więcej o innych smakach sprzężenia
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla