1 / 22

SQL 3 : JOIN

Het selecteren van data uit meerdere gekoppelde tabellen. SQL 3 : JOIN. Vorige week. Tabel: rijen en kolommen gevuld met ‘data’ Datatype: typologie op basis van mogelijk operaties Selecteren uit een enkele tabel ( SELECT ). Basis datatype. Type informatie in een veld

meli
Download Presentation

SQL 3 : JOIN

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Het selecteren van data uit meerdere gekoppelde tabellen SQL 3 : JOIN

  2. Vorige week • Tabel: rijen en kolommen gevuld met ‘data’ • Datatype: typologie op basis van mogelijk operaties • Selecteren uit een enkele tabel ( SELECT )

  3. Basis datatype • Type informatie in een veld • Bepaalt het soort operaties dat je er op kan uitvoeren. • basis datatypen die in iedere database of programmeertaal op één of andere manier worden ondersteund: • Numeriek • Tekst • Boolean • Binair • Datum/tijd • Lange tekst

  4. Syntax van een eenvoudige SELECT • SELECTID,naam, prijsFROMproductWHEREcategorie = ‘boek’ORDER BYprijs • ID naam prijs8 groentensoep 2,157 appelsap 2,959 blik tonijn 3,15

  5. Berekeningen in SELECT (numeriek) Selecteer de naam, prijs en prijs_plus_btw SELECT ID, naam, prijs, prijs *(1+ btw_tarief)/100 AS prijs_met_btwFROM product ID Naam prijs prijs_met_btw1 fiets 100 1202 brood 1 1,05 5 boek 30 36

  6. Statistieken (aggregaties) • SELECTCOUNT(*) AS aantal, AVG(prijs) AS midPrijs,MAX(prijs) AS maxPrijs, MIN(prijs) AS minPrijsFROM product • Aantal midPrijs maxPrijs minPrijs 9 873,10 8000 2.05

  7. Statistieken (aggregaties) per groep • SELECT categorie,COUNT(*) AS aantal, FROM productGROUP BY categorie • Cat Aantal • vervoer 6 • Boek 3

  8. speciaal geval:SELECT DISTINCT • SELECT DISTINCT categorieFROM product • categorievervoervoedselboek

  9. vandaag • Gegevens selecteren uit meerdere ‘gekoppelde’ tabellen. • Eigenlijk heel simpel, maar je moet het effe door hebben.Vallende kwartjes

  10. Vandaag te leren • Gerelateerde tabellen • Primaire Key (PK) , Foreign Key (FK) • JOIN ( rijen uit verschillende tabellen selecteren en samenvoegen ) • INNER JOIN • Soorten relaties • One-to-many • One-to-one • Many-to-many

  11. Entiteiten, Attributen en Relaties • Een boek is gescheven door een auteur • Een student volgt een opleiding • De klant doet een bestelling • Een product gemaakt door een producent Meer voorbeelden? • Voor iedere ‘entiteit’ een tabel

  12. Entiteit Een op zichzelf staand ‘iets’ dat bestaat en kenmerken ( attributen ) heeft. Bijvoorbeeld: • Product • Producent • Schrijver • Boek • Leerling • Vak

  13. Relatie tussen product en producent Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl

  14. SELECT uit twee gekoppeldetabellen • Selecteer alle producten en koppel daar aan de naam van de producent • SELECT product.*, producent.naam • FROM product • INNERJOIN producentON product.producentID = producent.ID • ID naam … producentID producent.Naam3 tonijn 6 unilever4 kip 6 unilever5 step 4 joop’s fiets… … … …

  15. MEER DAN twee gekoppeldetabellen • SELECT product.*, producent.naam , btwtarief.percentage • FROM product • INNNERJOIN producent ON product.producentID = producent.ID • INNER JOIN btwtarief ON product.btwtariefID = btwtarief.ID • ID naam producentID producent.Naam percentage3 tonijn 6 unilever 5 4 kip 6 unilever 55 step 4 joop’s fiets 20… … … …

  16. Verschillendesoortenrelatiesnaarkardinaliteit • Many-to-one ( product -geproduceerd door> producent ) • One-to-many ( klant -doet> bestelling ) • Many-to-many ( bestelling –besteldproduct> product ) • One-to-one ( man –isgetrouwdmet> vrouw ) Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl

  17. One-to-one relaties Wanneer gebruik je een one-to-one? • Natuurlijke 1 op 1 relaties: • Is_getrouwd_met • Aparte tabel voor binaire of grootte data velden • product.filmID = film.ID • SELECT product.* , film.bindata FROM product INNER JOIN film ON product.filmID = film.ID

  18. Many-to-manybestelling <-> product

  19. Vandaag geleerd • Gerelateerde tabellen • Primaire Key (PK) , Foreign Key (FK) • JOIN ( tabellen samenvoegen ) • INNER JOIN • Soorten relaties • Many-to-one • One-to-many • One-to-one • Many-to-many ( gebruik een ‘tussen tabel’ )

  20. oefeningen • DOE DE OEFENINGEN 2 • DOE DE EXTRA OEFENINGEN

More Related