/ / MySQL JOIN: popis, príklad použitia príkazu a odporúčania

MySQL JOIN: popis, príklad použitia príkazov a odporúčania

Vývoj databáz internetových zdrojovsa prakticky nelíši od štandardných databáz vyvinutých v systéme MS SQL SERVER. Spravidla sa pre tieto prostriedky používa jazyk MY SQL, aj keď sa dá použiť aj na vývoj štandardných softvérových produktov pre miestne použitie. Ale o tom tento článok nie je.

pripojiť sa k mysql

Často pri práci s databázami v každej z nichjazykoch je úlohou vytvoriť vzorku údajov na výstup do rôznych správ, grafov atď. Spravidla pri implementácii tohto druhu úlohy musíte použiť nie jednu, ale niekoľko tabuliek kombinujúcich ich do jedného dotazu, čo výrazne komplikuje jej dizajn. V takom prípade je potrebné vziať do úvahy to, ako sa budú dáta zobrazovať, ako sa „vytiahnu“ tabuľky a aký výsledok bude pre programátora najprijateľnejší. Na riešenie týchto problémov sa používa jeden zo štandardných jazykových konštruktov MySQL, Join.

Pripojte sa k slovu koncept

Jazyky pre vývoj databáz, nezáleží na tom, ktorétoto je jazyk, štandardné slová z anglických slovníkov sa berú ako základ (z tohto dôvodu vám bude za predpokladu, že viete anglicky, oveľa ľahšie pracovať s tabuľkami). Pre implementáciu spojenia tabuliek do výberu sa používa rovnaké slovo - Pripojiť sa. V programovacom jazyku databázy sa používa My SQL. Preklad tohto služobného slova je úplne rovnaký ako v samotnom jazyku - „union“.

Interpretácia konštrukcie MySQL - Pripojte sa, aktorýkoľvek z nich bude úplne rovnaký. Ak dešifrujeme účel štruktúry, konkrétne schému jej fungovania, dostaneme nasledujúci význam: štruktúry umožnia zhromaždiť potrebné polia z rôznych tabuliek alebo vnorené dotazy do jedného výberu.

Typy štruktúr, ktoré sa majú kombinovať

pripojiť sa k mysql

Ak programátor potrebuje odobrať vzorku zniekoľko tabuliek a vie, aké kľúčové polia sú v nich a aké údaje sú potrebné pre správu, potom môžete na dosiahnutie požadovaného výsledku použiť jeden zo základných konštruktov spojenia. Existujú štyri základné konštrukty (na spájanie tabuliek):

  1. Vnútorné spojenie.
  2. Krížový spoj.
  3. Pripojte sa doľava.
  4. Správne sa pripojte.

V závislosti od konkrétnej úlohy bude mať každý zo štandardných návrhov odlišné výsledky, čo vám umožní prijímať správy o rôznych parametroch v krátkom čase.

Vytváranie a vypĺňanie tabuliek pre ďalšie použitie

Pred začatím napríklad zvažujemmechanizmy pre prácu s konštrukciami zjednotenia údajov stojí za to pripraviť niekoľko tabuliek, s ktorými budeme v budúcnosti pracovať. To pomôže vizuálne ukázať všetky princípy fungovania operátorov, navyše sa týmto spôsobom začiatočníci ľahšie naučia všetky základy programovacích tabuliek.

Prvá tabuľka popíše niektoré z objektov, s ktorými sa človek neustále stretáva počas celého života.

pripojiť sa k mysql

V druhej tabuľke si popíšeme niektoré vlastnosti objektov z prvej tabuľky, aby ste s nimi mohli v budúcnosti pracovať.

zľava pripojiť sa k mysql

Vo všeobecnosti budú na ilustráciu ich práce stačiť dve tabuľky. Teraz môžete začať praktickú kontrolu našich návrhov.

Pomocou vnútorného spojenia

Pri použití konštrukcie MySQL - Pripojte sa k Ineerstojí za to zvážiť niektoré z jeho funkcií. Tento dizajn vám umožní vybrať z oboch tabuliek iba tie záznamy, ktoré sa nachádzajú v prvej a druhej tabuľke. Ako to funguje? V prvej tabuľke máme hlavný kľúč - ID, ktorý označuje radový počet záznamov v tabuľke.

Pri vytváraní druhej tabuľky rovnaký kľúčpoužité ako sériové číslo, príklad je možné vidieť na obrázkoch. Pri výbere údajov príkaz Select ako výsledok určí iba tie záznamy, ktorých poradové čísla sa zhodujú, čo znamená, že sa nachádzajú v prvej a druhej tabuľke.

Pri použití konštrukcie musíte pochopiťaký druh údajov potrebujete získať. Najbežnejšou chybou, najmä pre začínajúceho databázového programátora, je nesprávne použitie konštrukcie Inner join. Ako príklad, MySQL Inner Join, môžete zvážiť skript, ktorý nám vráti z vyššie popísaných a vyplnených tabuliek informácie o objektoch a ich vlastnostiach. Aj tu však môže byť niekoľko spôsobov, ako štruktúru využiť. Z tohto hľadiska je My SQL veľmi flexibilný jazyk. Môžete sa teda pozrieť na príklady použitia pripojenia MySQL Inner Join.

Zreťazenie tabuliek bez zadania akýchkoľvek parametrov. V takom prípade dostaneme výsledok takéhoto plánu:

mysql vnútorné spojenie

Ak to naznačíme prostredníctvom slova Používanie služby, žeje nevyhnutné brať do úvahy hlavné kľúče záznamov v tabuľkách, potom sa výsledok výberu radikálne zmení. V takom prípade dostaneme výber, ktorý vráti iba tie riadky, ktoré majú rovnaké hlavné kľúče.

príklady pripojenia mysql

Možný je aj tretí prípad použitiastavby, keď v dotaze cez slovo „on“ sú označené polia, ktorými by sa mali tabuľky spojiť. V takom prípade výber vráti nasledujúce údaje:

mysql pripojiť sa vybrať

Vlastnosti používania funkcie Left Join

Ak uvažujete o inom spôsobe spájania tabuliek pomocou konštrukcie MySQL - Pripojiť, všimnete si rozdiel v zobrazených dátach. Tento mechanizmus je ľavicový konštrukt.

Používanie funkcie Left Join MySQL má niektoré zvláštnosti a rovnako ako Inner vyžaduje jasné pochopenie výsledku, ktorý sa má dosiahnuť.

V takom prípade sa najskôr vyberú všetky záznamy.z prvej tabuľky a k nim sa neskôr pripoja záznamy z druhej tabuľky vlastností. Navyše, ak prvá tabuľka obsahuje záznam, napríklad „stolička“ a druhá tabuľka pre ňu nemá jedinú vlastnosť, operátor Left pred týmto záznamom zobrazí null, čo programátorovi oznámi, že existujú pre tento typ objektu žiadne známky ...

Použitie tohto dizajnu vám umožní určiť, ktoré polia alebo napríklad tovar v obchode nie sú ocenené, záručná doba atď.

Príklad použitia Left

Pre praktické zváženie obsluhykonštrukty Left Join MySQL používajú skôr opísané tabuľky. Napríklad musíte vybrať celý zoznam výrobkov, ktoré sa nachádzajú v obchode, a skontrolovať, či z nich nie sú žiadne známky alebo vlastnosti. V takom prípade sa pri výbere zobrazia všetky produkty a pre tie, ktoré nemajú vlastnosť, sa nastavia prázdne hodnoty.

aktualizácia mysql pripojiť sa

Použitie klauzuly Where in a Join

Ako parameter môže spojenie obsahovať nielen zadanie polí, pomocou ktorých sa majú tabuľky spojiť, ale môže obsahovať aj operátor klauzuly Where.

Zvážte napríklad skript, ktorý by malaby nám vrátili iba tie záznamy, pre ktoré niet ani stopy. V takom prípade musíte do konštrukcie Pripojiť pridať operátor podmienky a určiť, čo presne treba vo výsledku vrátiť.

Pri použití funkcie Pripojiť - Kde v MySQL musíte jasne pochopiť, že sa zobrazia iba tie záznamy, na ktoré sa vzťahuje zadaná podmienka, a výber bude potom vyzerať takto:

mysql pripojiť sa kde

Takéto dotazy umožňujú výber pomocoukonkrétne údaje, ktoré sa týkajú stavu zvoleného programátorom. Môžete určiť niekoľko takýchto podmienok pri maximalizácii parametrov pre výber údajov z kombinovaných tabuliek.

Používanie spojenia na úpravu údajov v tabuľkách

Pripojiť sa je v skutočnosti univerzálne.Umožňuje vám nielen vykonať rôzne výbery, ale aj zahrnúť do dotazov od jednej do niekoľkých tabuliek a zadať do výberu ďalšie podmienky. Konštrukt je možné použiť aj na ďalšie dátové operácie. Napríklad Join sa dá použiť na úpravu údajov v tabuľke. Radšej vyjasnite podmienky v tabuľke alebo v prípadoch, keď potrebujete aktualizovať údaje vo viacerých tabuľkách za rovnakých podmienok.

Zvážte napríklad nasledujúci problém.Existujú tri tabuľky, ktoré obsahujú niektoré údaje. Musíte zmeniť údaje v oboch tabuľkách pomocou jedného dotazu. Na vyriešenie tohto druhu úloh môžete použiť konštrukciu Pripojiť sa v príkaze Aktualizovať. Typ samotnej konštrukcie spojenia závisí, rovnako ako v prípade vzorkovania údajov, od výsledku, ktorý chce programátor získať.

Pozrime sa na najjednoduchší príklad.Je potrebné aktualizovať údaje za rovnakých podmienok jednou požiadavkou. Dotazy tohto druhu sú zostavené tak, aby optimalizovali prácu s databázou. Prečo písať rôzne dotazy pre každú z tabuliek, keď môžete vykonať všetku manipuláciu s údajmi pomocou jedného dotazu? Príklad MySQL Update Join v našom prípade bude taký:

príklady spojenia vľavo mysql

Vytváranie zložitých otázok

Pomerne často pri práci s databázouje potrebné vytvárať dotazy nielen spojením niekoľkých tabuliek, ale aj použitím poddotazov. Pre začínajúceho databázového programátora je takéto úlohy dosť ťažké pochopiť. Problém spočíva v tom, že musíte každý krok premyslieť, určiť, ktoré údaje z ktorej tabuľky alebo dotazu je potrebné získať, a ako s nimi budete musieť v budúcnosti pracovať.

Pre konkrétnejšie pochopenie môžete zvážiť(v MySQL Join) príklady zložitých otázok. Ak ste začiatočník a len začínate pracovať s databázami, potom bude toto školenie iba prospešné. Ideálnou možnosťou by boli príklady MySQL Left Join.

zľava pripojiť sa k mysql

Táto požiadavka nám vráti 58 záznamov zmlúvtržby, pre ktoré je zostatok v hotovosti vyplnený alebo existuje k zvolenému dátumu. V tomto prípade ide o aktuálny dátum. Do výberu bola tiež pridaná podmienka, že názov zmluvy musí obsahovať symboly - „123“. Informácie (údaje) zobrazené na obrazovke budú zoradené - zoradené podľa čísla zmluvy.

Nasledujúci príklad zobrazí údaje o všetkých platbách, v ktorých bude uvedené číslo zmluvy.

pripojiť sa k mysql

Pomocou poddotazov

Ako už bolo spomenuté skôr, pri práci s databázamimôžete kombinovať nielen tabuľky, ale aj tabuľku s dotazom. Tento dizajn sa používa hlavne na urýchlenie dotazu a jeho optimalizáciu.

Napríklad, ak je to potrebné z tabuľky, ktorámá niekoľko stoviek polí a povedzme tisíc záznamov, vyberte iba dve polia, potom by ste mali použiť dotaz, ktorý vráti iba povinné polia, a skombinovať ho s hlavnou množinou údajov. Ako príklad MySQL Join Select môžete považovať dotaz tohto typu:

pripojiť sa k mysql

Nie sú to všetky spôsoby použitia štandarduMySQL konštrukcie, ale iba štandardné. Ako používať konštrukciu Pripojiť sa a v akých formách je na samotnom programátorovi, ale stojí za to pamätať a brať do úvahy, aký výsledok by sa mal dosiahnuť pri vykonaní dotazu.

páčilo sa:
0
Populárne príspevky
Duchovný rozvoj
jedlo
y