Придружује се у кошници - Научите врсте придруживања са својим командама и излазима

Преглед садржаја:

Anonim

Увод у придруживање кошници

Придруживања се користе за проналажење различитих излаза користећи више табела комбинујући их на основу одређених колона. Сада, да би таблице биле у кошници, од нас се мора креирати табела и учитати подаци у сваку табелу. Овде ћемо користити две табеле (купац и производ) за разумевање сврхе.

Различите команде

Испод су наредбе за креирање и учитавање података у ове табеле:

За таблицу купаца : 6 редова

Креирајте команду

Креирајте спољну табелу ако не постоји купац (ид стринг, низ имена, градски низ)
формат реда ограничен
поља која су завршена са ''
локација '/усер/хиве/варехоусе/тест.дб/цустомер'
тблпропертиес ("скип.хеадер.лине.цоунт" = "1");

Учитај команду

Учитајте локалне податке у путу '/хоме/цлоудера/Цустомер_Неха.ткт' у клијента таблице;

Подаци табеле клијента

За табелу производа : 6 редова

Креирајте команду

Креирајте спољну табелу ако не постоји производ (Цуст_Ид стринг,
Низ производа, низ цена)
формат реда ограничен
поља која су завршена са ''
локација '/усер/хиве/варехоусе/тест.дб/продуцт'
тблпропертиес ("скип.хеадер.лине.цоунт" = "1");

Наредба за учитавање

Учитајте локални пут '/хоме/цлоудера/Продуцт_Неха.ткт' у производ таблице;

Подаци табеле производа

Напомена : Користим "својства (" скип.хеадер.лине.цоунт "=" 1 ")" да прескочим први ред мојих података који је мени заглављен.

Да бисте проверили шему табеле, користите наредбу „десц име табеле;“


Сад имамо податке у табелама, играјмо се с тим ????

Врсте спајања у кошници

Јоин - Ово ће дати унакрсни производ оба података табеле као излаз. Као што видите, имамо 6 редова у свакој табели. Дакле, излаз за Јоин ће бити 36 реда. Број мапперс-1. Међутим, оператер се не смањује.

Команда

Излаз:

1. Потпуно се придружите

Потпуно придруживање без услова подударања ће дати унакрсни производ обе табеле.

Број мапперс-2

Број редуктора-1

То се може постићи и коришћењем „Јоин“, али уз мањи број мапирања и редуктора.

Потпуно Придружите се условима за утакмицу

Сви редови ће бити спојени из обе табеле. Ако се редови не подударају у другој табели, НУЛЛ ће бити попуњен у излазу (Обратите се на Ид-100, 106). Ниједан ред није прескочен.

Број мапперс-2

Број редуктора-1

Команда

Излаз:

2. Унутрашње придруживање

Ако се користи унутрашње спајање без клаузуле "он", добиће унакрсни производ као излаз. Међутим, од нас се тражи да користимо одређене ступове на основу којих се спајање може извести. Ступац Ид из табеле корисника и ступац Цуст_ид из табеле производа су моји специфични ступци. Излаз садржи ретке у којима се подударају Ид и Цуст_Ид. Можете да посматрате, редови са Ид-106 и Цуст_Ид-100 прескачу се у излазу јер нису присутни у другој табели.

Команда

Излаз:

3. Лево придруживање

Сви редови из леве табеле су спојени подударним редовима из десне табеле. Ако десна табела има редове са ИД-овима који нису присутни у левој табели, онда ће се ти редови прескочити (Проматрајте Цуст_Ид-100 у излазу). Ако десна табела нема ретке са ид-ом који се налазе у левој табели, НУЛЛ ће бити попуњен у излазу (Обратите се на ИД-106 у излазу).

Број Маппер-1

Број редуктора-0

Команда

Излаз:

4. Ригхт Јоин

Сви редови из десне табеле се подударају са левим редовима табеле. Ако лева таблица нема ниједан ред, НУЛЛ ће бити попуњен (Обсерве Ид 100). Редови са леве табеле биће прескочени ако се та утакмица не нађе у десној табели (Обратите ИД 106).

Број Маппер-1

Број редуктора-0

Команда

Излаз:

Закључак - Придружује се кошници

„Придружите се“, како реч каже, може да се придружи двема или више табела у бази података. Слично је с придруживањем у СКЛ-у. Придруживања се користе за проналажење различитих излаза користећи више табела комбинујући их на основу одређених колона. На основу захтева може се одлучити која ће вам се придружити. На пример, ако желите да проверите шта је ид који се налази у левој табели, а не у десној табели, једноставно можете да користите лево придруживање. Различите оптимизације се могу извршити у спајању кошница у зависности од сложености. Неки од примера су раздвајање придруживање, репликација и полу спајање.

Препоручени чланци

Ово је водич за Придруживања у кошници. Овде смо разговарали о врстама придруживања као што су потпуно придруживање, унутрашње придруживање, лево придруживање и десно придруживање у кошници заједно са његовом командом и излазом. Такође можете погледати следеће чланке да бисте сазнали више -

  1. Шта је кошница?
  2. Команде за кошнице
  3. Обука за кошнице (2 курса, 5+ пројеката)
  4. Апацхе Пиг вс Апацхе Хиве - Топ 12 корисних разлика
  5. Карактеристике алтернатива кошницама
  6. Коришћење налога ОРДЕР БИ у кошници
  7. Топ 6 врста придруживања у МиСКЛ-у са примерима