ComputersSoftware

MySQL JOIN: beschrijving, een voorbeeld van het gebruik van commando en aanbevelingen

Ontwikkeling van een database van internetbronnen wijkt niet af van standaard databases ontwikkeld in het systeem van MS SQL Server. Typisch voor dit soort hulpbron MY SQL taal, maar kan worden toegepast op de ontwikkeling van standaard software producten voor plaatselijk gebruik. Maar de vraag in het artikel niet gaan over.

Vaak bij het werken met databases in elk van de talen van de taak om de sample gegevens te maken op te leiden in een verscheidenheid van rapporten, grafieken en ga zo maar door. In de regel, de uitvoering van dit soort problemen moeten we niet één, maar meerdere tafels te gebruiken, ze te combineren in een enkel verzoek, de structuur sterk bemoeilijkt. Het is noodzakelijk om rekening te houden met, zoals ze moeten zijn output data zoals zal "inhalen" tafel, en wat het resultaat zal de meest aanvaardbaar voor de programmeur. Om deze problemen op te lossen, gebruikt u een van de standaard MySQL designtaal - Deelnemen.

Het concept van de woorden Join

Talen database ontwikkeling, het maakt niet uit wat voor soort taal, waarbij wordt uitgegaan van de standaard woorden van het Engels woordenboeken (dat is de reden waarom de voorwaarde dat je weet het Engels, je veel gemakkelijker om te werken met tafels bude). Om de aansluitingen tabel in het monster genomen hetzelfde woord te voeren - Deelnemen. In de taal van databasesoftware gebruikt My SQL. Vertaling van het woord service is precies hetzelfde als in de taal - "union".

Interpretatie MySQL structuur - Join, één van die exact hetzelfde zal zijn. Als u het doel van de bouw te ontcijferen, te weten de omtrek van haar werk, krijgen we de volgende waarden: het ontwerp zal toelaten om de verplichte velden uit verschillende tabellen of geneste queries te verzamelen in een enkel monster.

Soorten ontwerpen om te fuseren

Als de programmeur nodig heeft om een monster uit meerdere tabellen te verzamelen, en hij weet wat de belangrijkste velden in hen en wat voor soort gegevens nodig voor het rapport, kunt u gebruik maken van één van de basisstructuren van vereniging, om het gewenste resultaat te bereiken. Basisstructuren (om tabellen te sluiten) zijn vier:

  1. Inner join.
  2. Kruis treedt.
  3. LEFT JOIN.
  4. Rechts Deelnemen.

Afhankelijk van de taak, zal elk van de standaard ontwerpen verschillende resultaten, die rapporten over de verschillende parameters in een korte periode van tijd te ontvangen.

Maken en vullen tafels voor later gebruik

Voordat u begint, bijvoorbeeld, moeten mechanismen overwegen om te werken met data fusieconstructen moeten meerdere tafels, waarmee we zullen blijven werken voor te bereiden. Dit zal helpen om de principes van alle operatoren aan te tonen, daarnaast, zodat beginners leert alle grondbeginselen eenvoudiger programmering tafels.

De eerste tabel zal een aantal van de items waarmee mensen voortdurend worden aangetroffen zijn hele leven te beschrijven.

De tweede tabel een aantal van de eigenschappen van objecten uit de eerste tabel te beschrijven om verder te werken met hen mogelijk te maken.

In het algemeen zullen de twee tafels genoeg om het voorbeeld van hun werk te laten zien. Nu kunt u overgaan tot de praktische overweging van onze ontwerpen.

Met behulp van inner join

Als u gebruik maakt van MySQL structuur - Join Ineer overwegen waard een aantal van de mogelijkheden ervan. Dit ontwerp kunt u kiezen uit beide tabellen alleen de records die in de eerste en in de tweede tabel. Hoe werkt het? De eerste tabel hebben we de hoofdsleutel - ID, die het serienummer van records in de tabel geeft.

Bij de tweede tabel te maken, wordt dezelfde sleutel gebruikt als een volgnummer, een voorbeeld is te zien in de figuren. Bij het kiezen van een data-Select-instructie zal het resultaat bepalen registreert alleen de serienummers samenvallen - dus ze zijn in de eerste als in de tweede tabel.

Wanneer de constructie nodig is om precies wat je nodig hebt om gegevens op te halen te begrijpen. De meest voorkomende fout, met name voor de ontwikkelaars van de database, het is irrationeel en oneigenlijk gebruik van design Inner Join. Als voorbeeld, MySQL inner join, kunt u een script die ons zal terugkeren naar de eerder beschreven en gevuld met tafels van informatie objecten en hun eigenschappen te overwegen. Maar er kunnen verschillende manieren om het ontwerp te gebruiken. In dit verband Mijn SQL is zeer flexibel taal. Ja, kunt u voorbeelden van het gebruik van MySQL Inner Join zien.

Deelnemen aan tafels zonder opgave van parameters. In dit geval krijgen we het resultaat van een dergelijk plan:

Als we aangeven door woord Oplossing: Met behulp van een dienst, die nodig zijn om de belangrijkste sleutels van records in de tabellen in overweging te nemen, zal het resultaat set drastisch veranderen. In dit geval krijgen we het monster, dat alleen die rijen die dezelfde meester sleutels zal terugkeren.

Kans op een derde uitvoering van het gebruik, als daarom wordt gevraagd door het woord «op» geeft aan velden die het koppelen van tabellen moet gebeuren. In dit geval zal het monster de volgende informatie terug:

Features Gebruik LEFT JOIN

Als we kijken naar een andere manier van het combineren van tabellen met behulp van MySQL structuur - Join, kan men een verschil in data, die worden uitgevoerd opmerken. Een dergelijk mechanisme is Left design.

Met behulp van de structuur LEFT JOIN MySQL heeft een aantal functies en, als Inner, vraagt om een duidelijk inzicht in de te behalen resultaten.

In dit geval selecteert eerst alle records uit de eerste tabel, en verder daaraan zijn bevestigd op de tweede tafel eigenschappen. In dit geval, als er een record, bijvoorbeeld, de "stool" in de eerste tabel en de tweede tabel zijn geen huizen aan het, de Linkse operator displays in de voorkant van de toegang tot nul, waardoor de programmeur die de borden over dit onderwerp niet wordt gehoord vertelt .

Met behulp van dit ontwerp zal helpen bepalen welke velden of, bijvoorbeeld, is de goederen in de winkel niet instellen van de prijs, de garantieperiode , en ga zo maar door.

Toepassingsvoorbeeld Links

Om in aanmerking voor het ontwerp van de operator praktijk LEFT JOIN MySQL gebruik maken van de eerder beschreven tabel. Bijvoorbeeld, moet u de volledige lijst van producten die in de winkel te selecteren en te controleren op een aantal van hen niet kenmerken of eigenschappen dragen. In dit geval zal de sample alle producten weer te geven, en voor degenen die geen eigendom, zal nullen dragen.

Waar gebruik in de bouw Registreer

Als een parameter, kan de vereniging onder meer enkel op de velden waarvoor u moet een verbinding tafel te maken, maar mag de exploitant, indien de omstandigheden.

Bijvoorbeeld, overweeg dan een script dat moet worden teruggestuurd naar ons alleen de records die niet hebben neergezet een teken. In dit geval moet u het ontwerp toe te voegen Meld je aan bij operator termen en geven aan dat het moet worden geretourneerd als gevolg.

Bij gebruik in MySQL Join - waarin duidelijk moet worden begrepen dat alleen de records waarin de bovengenoemde aandoening zijn weergegeven, en het monster zal dan als volgt:

Deze verzoeken kunt u sample-specifieke gegevens met betrekking tot de geselecteerde programmeur conditie te maken. Dergelijke omstandigheden kunnen een aantal mogelijke wijzen tijdens het bijwerken van data selectie parameters verenigd met tafels.

Met behulp van Word lid om de gegevens in de tabellen veranderen

Sluit u aan bij, in feite, universeel. Hiermee kunt u niet alleen een groot aantal monsters te doen, maar ook aan te sluiten op de verzoeken van één tot meerdere tafels, aanvullende voorwaarden in een monster te leggen. Het ontwerp kan ook worden gebruikt voor andere data operaties. Zo Doe kan worden gebruikt om de gegevens in de tabel te wijzigen. Of liever gezegd, om de voorwaarden te verduidelijken in de tabel, of in gevallen waarin de noodzaak om gegevens in meerdere tabellen te werken aan dezelfde voorwaarden.

Neem bijvoorbeeld het volgende probleem. Gezien drie tafels waar sprake is van enig bewijs. Het is noodzakelijk de verandering van de gegevens in beide tabellen met behulp van een enkele zoekopdracht uit te voeren. Net voor het oplossen van dergelijke taken kunnen worden gebruikt in de command-update Join design. Doe mee aan de zeer type structuur hangt, op dezelfde manier als in het geval van het monster gegevens over het resultaat van die wil een programmeur te krijgen.

Denk aan een eenvoudig voorbeeld. Je moet informatie bij te werken op een enkel verzoek aan dezelfde voorwaarden. Dit soort query wordt gebouwd om de database te optimaliseren. Waarom schrijven verschillende query's voor elk van de tabellen, als u alle gegevens manipulatie verzoek kan uitgeven? Voorbeeld MySQL bijwerken Doe in ons geval zou zijn:

Het bouwen van complexe queries

Heel vaak bij het werken met de database query nodig is om niet alleen een unie van meerdere tafels, maar ook met het gebruik van sub-query's te bouwen. Dergelijke problemen zijn heel moeilijk te begrijpen voor de beginnende programmeur databases. Het probleem is dat we moeten nadenken over elke stap, bepalen welke gegevens uit een tabel of query moet komen en hoe in de toekomst moeten ze gaan werken.

Voor een meer specifieke begrip kan worden beschouwd (in MySQL Join) voorbeelden van complexe queries. Als je nieuw bent en zijn net begonnen om te werken met databases, zal een dergelijke training alleen maar ten goede. De ideale uitvoering zal MySQL LEFT JOIN voorbeelden.

Deze vraag zullen we terugkeren naar 58 verslagen van de koopovereenkomst, die vol is of er is een kassaldo voor de geselecteerde datum. In dit geval is de huidige datum. Ook in het monster toegevoegd aan de voorwaarde dat de overeenkomst moet de titel tekens - "123". De informatie op het scherm (data) worden gesorteerd - gesorteerd op het aantal van het contract.

In het volgende voorbeeld geeft de details van alle betalingen, die het contract nummer zal aangeven.

Met behulp van subqueries

Zoals eerder vermeld, bij het werken met databases kan worden gecombineerd niet alleen de tafel, maar de tafel met het verzoek. Dit ontwerp wordt voornamelijk gebruikt voor het versnellen van de query en de optimalisatie daarvan.

Bijvoorbeeld, als u wilt van de tafel, waar honderden velden heeft en, laten we zeggen, een duizenden records, kiest slechts twee velden, is het noodzakelijk om een query dat alleen de verplichte velden retourneert, en deze combineren met de belangrijkste gegevens monster. Als voorbeeld MySQL Join Select kan een verzoek van dit type te overwegen:

Het is niet alle methoden van het gebruik van standaard ontwerpen MySQL, en alleen standaard. Hoe te gebruiken ontwerp en Doe mee met een van zijn vormen, de programmeur beslist, maar het is goed te beseffen en rekening houden met wat het resultaat moet worden verkregen door de query.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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