De meeste moderne relationele database -servers gebruiken de Structured Query Language of SQL , toe te voegen , bij te werken en rapporteren van informatie in databases . SELECT-instructie SQL 's , gebruikt om gegevens weer te geven , heeft een facultatieve clausule genoemd INNER JOIN . Het verbindt twee tabellen samen tijdelijk in een enkele eenheid . SQL kunt u INNER JOIN gebruiken op twee manieren : impliciet , door het specificeren van de tafels en expliciet met de vermelding " INNER JOIN " in de syntaxis van de instructie . Selecteer In SQL , de SELECT-instructie geeft geeft op basis van gegevens in een database . Bijvoorbeeld , om een eenvoudige lijst van klanten op naam gesorteerd zien , zou u de volgende SQL- code : SELECT customer_number , naam , stad, staat , zip_code FROM klanten ORDER BY naam ; Inner Join JOIN verbindt twee tafels tegen elkaar . De klant tabel , in dit voorbeeld , kan een veld sales_code die verwijst naar de overeenkomstige gegevens in een aparte tabel verkoper . De volgende verklaringen lijst van de klant informatie en de naam van de verkoper is . Het eerste voorbeeld gebruikt JOIN impliciet , de tweede , uitdrukkelijk : SELECT customer_number , naam , stad, staat , zip_code , sales_name FROM klanten , winkelbediende WAAR customers.sales_code = salesperson.sales_code ORDER BY naam ; SELECT customer_number , naam , stad, staat , zip_code , sales_name FROM klanten INNER JOIN winkelbediende OP customers.sales_code = salesperson.sales_code ORDER BY naam ; Resultaten de INNER jOIN en impliciete join benaderingen leveren hetzelfde resultaat op . Zowel lijst dezelfde platen gesorteerd in dezelfde volgorde . Wanneer u de INNER JOIN syntax gebruiken , dit nadrukkelijk instrueert SQL om twee tabellen sluiten alleen op de platen die ze gemeen hebben . Met de impliciete versie , SQL ervan uitgegaan dat u een inner join wilt en verbindt de tabellen alsof u dit expliciet aangegeven . Optreden Het prestatieverschil tussen INNER JOIN en impliciete join is afhankelijk van de database- server , zoals IBM 's DB2 of Microsoft SQL server . In het geval van DB2 , de INNER JOIN is ongeveer een percent.faster . Voordat de server voert een SELECT , organiseert de verklaring in een plan , dat is een reeks stappen geoptimaliseerd om data efficiënt te verzamelen . De beoogde resultaten van beide benaderingen zijn gelijk , zodat het plan is meestal nagenoeg gelijk . Sinds DB2 laat een lichte snelheidsverschil tussen de twee methoden , de plannen zijn waarschijnlijk verschillend , maar in slechts kleine manieren. Best Practice De INNER JOIN syntax is een nieuwere , meer expliciete benadering van een SELECT-instructie . De website SQL Server performance raadt het gebruik ervan via de oudere impliciete methode, omdat het duidelijker is . De impliciete formaat maakt de WHERE-component uit te voeren dubbele plicht met het koppelen van tabellen en evaluatie van conditionele testen . De expliciete indeling houdt de twee taken gescheiden ; INNER JOIN heeft de toetreding tot en WAAR testen gegevens voor specifieke waarden . |