ComputereSoftware

MySQL JOIN: beskrivelse, et eksempel på anvendelse kommando og anbefalinger

Udvikling af en database af Internet ressourcerne ikke adskiller sig fra standard databaser udviklet i systemet med MS SQL Server. Typisk for denne type ressource bruge min SQL-sproget, selv om det kan anvendes til udvikling af standard software produkter til lokal brug. Men spørgsmålet i artiklen ikke griber det an.

Ofte når man arbejder med databaser i hvert af sprogene i den opgave, at gøre de eksempeldata at udlede i en række rapporter, grafer og så videre. Som regel, at gennemførelsen af denne form for problemer, vi har brug ikke én, men flere tabeller, kombinere dem i en enkelt anmodning, i høj grad komplicerer dens struktur. Det er nødvendigt at tage hensyn til, hvordan skal de data, vil blive vist som vil "indhente" bord, og hvad resultatet vil være den mest acceptable for programmøren. For at løse disse problemer ved at bruge en af standard MySQL designsprog - Deltag.

Begrebet ordene Deltag

Sprog database udvikling, uanset hvilken slags af sproget, med udgangspunkt i standard ord engelske ordbøger (som er derfor den betingelse, at du kender engelsk, du bude langt nemmere at arbejde med tabeller). At gennemføre tilslutninger tabellen i prøven taget det samme ord - Deltag. På det sprog, database software, der bruges My SQL. Oversættelse af ordet service er nøjagtig den samme som på det sprog - "union".

Fortolkning MySQL struktur - Deltag, enhver hvoraf den ene vil være nøjagtig den samme. Hvis du dechifrere formålet med byggeriet, nemlig omridset af hendes arbejde, vi får de følgende værdier: design vil gøre det muligt at indsamle de nødvendige felter fra forskellige tabeller, eller indlejrede forespørgsler i en enkelt prøve.

Former for design at fusionere

Hvis programmøren har brug for at indsamle en prøve fra flere tabeller, og han ved, hvad de vigtigste felter i dem og hvilken slags data der er behov for rapporten, kan du bruge en af de grundlæggende strukturer i forening, for at opnå den ønskede resultat. Grundlæggende strukturer (at slutte tabeller) er fire:

  1. Indvendig deltage.
  2. Cross Deltag.
  3. Venstre deltage.
  4. Lige Deltag.

Afhængig af opgaven, vil hver af de standard design giver forskellige resultater, der vil modtage rapporter om forskellige parametre på kort tid.

Oprettelse og udfyldning af tabeller til senere brug

Før du begynder, for eksempel til at overveje mekanismer til at arbejde med data fusionskonstruktioner bør forberede flere tabeller, som vi vil fortsætte med at arbejde. Dette vil bidrage til at demonstrere principperne for alle operatører, ud, så begyndere vil lære alt det grundlæggende lettere programmering tabeller.

Den første tabel vil beskrive nogle af de emner, som folk er konstant støder på i hele sit liv.

Den anden tabel beskriver nogle af egenskaberne af genstande fra den første tabel for at tillade yderligere arbejde med dem.

Generelt vil de to tabeller være nok til at vise eksemplet med deres arbejde. Nu kan du gå videre til den praktiske overvejelse af vores design.

Brug Indre Deltag

Hvis du bruger MySQL struktur - Deltag Ineer værd at overveje nogle af dens funktioner. Dette design giver dig mulighed for at vælge fra begge tabeller alene de poster, der er i den første og i den anden tabel. Hvordan virker det? Den første tabel vi har hovednøglen - id, som angiver serienummeret på poster i tabellen.

Når du opretter den anden tabel, er den samme nøgle bruges som sekvensnummer, et eksempel kan ses i figurerne. Når du vælger en data Vælg opgørelse vil bestemme resultatet kun registrerer de serienumre sammenfaldende - derfor er de i den første og i den anden tabel.

Når konstruktionen er nødvendigt at forstå præcis, hvad du har brug for at hente data. Mest almindelige fejl, især for udviklere af databasen, det er irrationel og forkert brug af design Indre Kom. Som et eksempel, MySQL Inner Deltag, kan du overveje et script, der vil vende os tilbage til tidligere beskrevet, og fyldt med tabeller af informations- objekter og deres egenskaber. Men der kan være flere måder at bruge design. I denne henseende My SQL er meget fleksibel sprog. Så kan du se eksempler på brug af MySQL Indre Deltag.

Vær med tabeller uden at angive nogen parametre. I dette tilfælde får vi resultatet af en sådan plan:

Hvis vi angiver for ord Løsning: Brug af en tjeneste, er det nødvendigt at overveje de vigtigste nøgler af poster i tabellerne, vil resultatet sæt ændre sig dramatisk. I dette tilfælde får vi prøven, som vil vende tilbage kun de rækker, der har de samme master-nøgler.

Mulighed for en tredje udformning af brug, når du bliver bedt om ordet «på» angiver felter, som skal opstå sammenføjning tabeller. I dette tilfælde vil prøven returnerer følgende oplysninger:

Funktioner Brug Venstre Deltag

Hvis vi overveje en anden måde at kombinere tabeller med MySQL struktur - Deltag, man kan mærke en forskel i dataene, hvilket er udlæst. En sådan mekanisme er Venstre design.

Brug af strukturen Venstre Deltag MySQL har nogle funktioner, og som Inner, kræver en klar forståelse af de resultater, der skal opnås.

I dette tilfælde vælger først alle poster fra den første tabel, og yderligere dertil fastgjort på den anden tabel egenskaber. I dette tilfælde, hvis der er en rekord, for eksempel "afføring" i den første tabel og den anden tabel er ingen egenskaber til det, de venstre operatør skærme foran indgangen til nul, som fortæller programmøren, at tegnene på dette emne ikke bliver hørt .

Ved hjælp af denne konstruktion vil hjælpe med at bestemme, hvilke felter eller for eksempel, er varerne i butikken ikke fastsætte prisen, garantiperioden , og så videre.

Anvendelseseksempel Venstre

For at komme i betragtning til udformningen af operatørens praksis Venstre Deltag MySQL bruge den tidligere beskrevne bordet. For eksempel, skal du vælge hele listen over produkter, der er i butikken, og tjek for nogle af dem ikke var forsynet med karakteristika eller egenskaber. I dette tilfælde vil prøven vise alle produkter, og for dem, der ikke har nogen ejendom, vil bære nuller.

Hvor brug i byggeri Deltag

Som en parameter, kan foreningen ikke blot angiver de områder, hvor du skal lave en forbindelse bord, men kan omfatte erhvervsdrivende Når betingelser.

For eksempel overveje et script, der skal returneres til os kun de poster, som ikke har lagt ned et tegn. I dette tilfælde, skal du tilføje design Deltag operatør vilkår og indikerer, at den bør returneres som resultat.

Når det bruges i MySQL Deltag - Hvor det skal klart forstået, der viser kun de registreringer, der indeholder ovennævnte betingelse, og prøven vil derefter være som følger:

Disse anmodninger kan du foretage sample-specifikke data vedrørende den valgte programmør tilstand. Sådanne forhold kan indikere flere mulige under opdatering udvælgelse af data parametre forenet med borde.

Brug Deltag at ændre data i tabellerne

Design Deltag i virkeligheden, universel. Det giver dig mulighed for at ikke kun gøre en række prøver, men også oprette forbindelse til anmodninger fra en til flere tabeller, at stille yderligere betingelser i en prøve. Design kan også bruges til andre data operationer. Således Deltag kan bruges til at ændre dataene i tabellen. Eller rettere, at præcisere betingelserne i tabellen, eller i tilfælde, hvor der er behov for at opdatere data i flere borde på samme vilkår.

For eksempel overveje følgende problem. I betragtning af tre tabeller, hvor der er nogle beviser. Det er nødvendigt at foretage en ændring af data i begge tabeller ved hjælp af en enkelt forespørgsel. Bare for at løse sådanne opgaver kan bruges i kommando Opdatering Deltag design. Deltag i meget form for struktur afhænger, på samme måde som i tilfældet med de eksempeldata om resultaterne af hvem ønsker at få en programmør.

Overvej et simpelt eksempel. Du er nødt til at opdatere data på en enkelt anmodning til de samme betingelser. Denne form for forespørgsel er konstrueret til at optimere databasen. Hvorfor skrive forskellige forespørgsler for hver af tabellerne, hvis du kan bruge alle de data manipulation én anmodning? EKSEMPEL MySQL Opdatering Deltag i vores tilfælde ville være:

Opbygning af komplekse forespørgsler

Ganske ofte, når man arbejder med database forespørgsler nødvendigt at bygge ikke kun en union af flere tabeller, men også med brug af sub-forespørgsler. Sådanne problemer er ganske vanskeligt at forstå for nybegyndere programmør databaser. Problemet er, at vi er nødt til at tænke igennem hvert trin, bestemme, hvilke data fra en tabel eller forespørgsel har brug for at få, og hvordan de i fremtiden skal gå på arbejde.

For en mere specifik forståelse kan overvejes (i MySQL Deltag) eksempler på komplekse forespørgsler. Hvis du er ny og er lige begyndt at arbejde med databaser, vil en sådan uddannelse kun gavne. Den ideelle udformning vil MySQL Venstre Deltag eksempler.

Denne forespørgsel vil returnere os til 58 registreringer af købsaftalen, som er fuld, eller der er en kassebeholdning for den valgte dato. I dette tilfælde den aktuelle dato. Også i prøven tilføjet den betingelse, at kontrakten skulle være titlen tegn - "123". Oplysningerne (data) på skærmen vil blive sorteret - sorteret ud fra antallet af kontrakten.

Det følgende eksempel viser detaljerne for alle betalinger, som vil indikere kontrakten nummer.

Brug underforespørgsler

Som tidligere nævnt, når man arbejder med databaser kan kombineres ikke kun bordet, men tabellen med anmodningen. Dette design er hovedsageligt bruges til at fremskynde forespørgslen og dens optimering.

For eksempel, hvis du ønsker fra bordet, som har hundredvis af marker og, siger, tusind optegnelser, vælge kun to felter, er det nødvendigt at anvende en forespørgsel, der returnerer kun de krævede felter, og kombinere det med de vigtigste data prøven. Som et eksempel MySQL Deltag Select kan overveje en anmodning af denne type:

Det er ikke alle metoder til brug af standard designs MySQL, og kun standard. Sådan bruger design og Deltag i nogen af dens former, programmøren beslutter, men det er værd at huske og tage hensyn til, hvad resultatet skal opnås ved forespørgslen.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 da.birmiss.com. Theme powered by WordPress.