Deelnemen SQL tabellen

Bookmark and Share this Article Original English article

Wanneer u informatie binnen de database tabellen, kunnen we soms moeten kijken naar de gegevens van twee of meer verschillende tabellen, zoals we zagen in het vorige voorbeeld. Er is nog een nuttige manier om relationele toegang tot de gegevens, met behulp van een techniek genaamd toetreding. Als we zeggen "lid," bedoelen we dat we vergelijken de feitelijke gebieden door hun namen in verschillende tabellen, in plaats van de feitelijke gegevens binnen hen (hoewel, wanneer de verklaring wordt uitgevoerd de feitelijke gegevens worden vergeleken).

Voor een voorbeeld van hoe we kunnen gebruiken toetreden, laten we eens kijken terug naar het vorige voorbeeld. Laten we zeggen dat we wilden een gedetailleerde lijst van vijanden van Henry's en niet alleen halen hun namen, in het vorige voorbeeld, zouden we eerst voeren deze verklaring:

SELECT vijand uit relateenemies WHERE speler = 'Henry'

Dan, voor elke naam op de lijst zou teruggevonden, noemen we de volgende SQL-statement:

SELECT * FROM playerdata WHERE username ='????'; (waar???? Vertegenwoordigt elke naam op de lijst in beurt)

Met de toetreding tot techniek, echter kan dit worden gedaan in een SQL statement, dat wil zeggen minder code. Het zal ook sneller uitvoeren (in plaats van met behulp van twee verklaringen). Hier is de verklaring die we toetreden zou vereisen om dit te doen:

mysql> SELECT * FROM playerdata, relateenemies WHERE playerdata.username = relateenemies.enemy EN relateenemies.player = 'Henry';

Dus eerst selecteren we alle gegevens van zowel de playerdata en relateenemies tafels en vervolgens het plaatsen van een voorwaarde aan de samenvloeiing van de tafels, zodat de gegevens alleen worden geselecteerd wanneer de gebruikersnaam playerdata veld in de tabel is gelijk aan de vijand veld in de relateenemies tafel. Als we gewoon links met de single staat, zou het weer de volledige resultaten van beide tabellen voor elke vijand in de relateenemies tabel. Dus onze tweede voorwaarde beperkt de resultaten alleen om te laten zien Henry vijanden door het vergelijken van de speler relateenemies veld in de tabel om de string Henry. Nuttig, hè?

een artikel afkomstig van George Ionescu


Disclaimer: Onze website is niet verantwoordelijk voor de informatie in dit artikel. In dit artikel wordt op geen enkele manier de standpunten, meningen, gedachten of overtuigingen van de artikelen directory personeel.
Vertaling aankondiging: Het artikel "Joining SQL tabellen" is vertaald met behulp van een geautomatiseerde vertaling dienst. Onze excuses voor eventuele vertaalfouten die heeft plaatsgevonden. Dank u voor uw begrip.


  Online: 2084 users browsing the articles directory © 2005-2010 E-articles.info All Rights Reserved.  
The articles and tutorials in the directory are property of their respective owners and authors.