De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

SQL Les 3 17 February 2019.

Verwante presentaties


Presentatie over: "SQL Les 3 17 February 2019."— Transcript van de presentatie:

1 SQL Les 3 17 February 2019

2 Agenda Herhaling Afwerken data normalisatie Oefeningen
Weergeven van gegevens uit meerdere tabellen 17 February 2019

3 Herhaling 17 February 2019

4 Geen geschikte tabelstructuur
Bepaalde informatie wordt meer dan één keer opgeslaan (redundantie) Een tabel met subtabellen is zeer complex om te beheren (herhalende groepen) Gegevens over producten worden alléén in de context van gerechten bewaard, terwijl producten een zelfstandig belang hebben February 17, 2019

5 Normaliseren & Standaardiseren
Het verwijderen van herhalende groepen of redundantie, door tabellen van een grotere tabel af te splitsen. Standaardiseren: Bv eenheid liter 17 February 2019

6 Beperkingsregels Voorbeeld Optionele en verplichte kolommen Verplicht
De kolom moet een waarde hebben Bv gerecht.gerechtnaam Optioneel De kolom mag lege cellen bevatten Bv product.eenheidnaam Bv peper -> geen eenheidnaam en energiePE Aanduiding met op February 17, 2019

7 Gedragsregels RDBMS onderneemt actie in antwoord op een aantal acties
Gedragsregels of actieregels February 17, 2019

8 Reference actieregels
Bewaren van de referentiële integriteitsregel In 2 gevallen problemen Verwijderen van een ouderrij Wijzigen van de primary key in een ouderrij Deleteregels Updateregels February 17, 2019

9 Deleteregels Restricted delete Cascading delete Nullifying delete
Nullifying komt in de praktijk weinig voor February 17, 2019

10 Updateregels Restricted update Cascading update Nullifying update
February 17, 2019

11 Reference actieregels (2)
February 17, 2019

12 Oefening 1 – 2 – 3 – 4 – 5 February 17, 2019

13 Meer over uniciteitsregels
Uniciteitsregels zijn het meest prominent Hoe bepalen we de juistheid van een voorgestelde uniciteitsregel? Bv: Avondschool Inschrijving (cursistnr, vaknaam, docentnaam) February 17, 2019

14 Meer over uniciteitsregels (2)
7 mogelijkheden voor een tabel met 3 kolommen February 17, 2019

15 Meer over uniciteitsregels (3)
February 17, 2019

16 Meer over uniciteitsregels (4)
Regels zijn niet onafhankelijk van elkaar Regels hangen af van de business rules van het bedrijf February 17, 2019

17 Combinaties van uniciteitsregels
Uniciteitsregels kunnen gecombineerd worden February 17, 2019

18 Uniciteitsregels 99 % van de gevallen over 1, 2 of 3 kolommen
February 17, 2019

19 Samengestelde sleutels
Een primary key kan samengesteld zijn: Bestaande uit meer dan één kolom February 17, 2019

20 Recursieve verwijzingen
= Verwijzing van een tabel naar zichzelf Bv: Hemellichamen in ons zonnestelsel, die satelliet kunnen zijn van een ander hemellichaam February 17, 2019

21 Recursieve verwijzingen (2)
Structuurdiagram? Cardinaliteitendiagram? February 17, 2019

22 Recursieve verwijzingen (2)
Voorstelling ook mogelijk met een virtuele tabel: February 17, 2019

23 Oefeningen 8 February 17, 2019

24 Oplossing 8 February 17, 2019

25 Oplossing 8 February 17, 2019

26 Oefening 9 February 17, 2019

27 Oefening 10 February 17, 2019

28 Oefening 11 February 17, 2019

29 Oefening 12 February 17, 2019

30 Oefening 13 February 17, 2019

31 DML 17 February 2019

32 SELECT statement (1) 17 February 2019

33 SELECT statement (2) SELECT: lijst van kolommen (minstens 1) of *
DISTINCT: enkel unieke rijen worden weergegeven ALIAS: geef de kolom een andere naam FROM TABEL: geef de tabel(len) die de kolom(men) bevatten WHERE: beperkt het aantal rijen tot een aantal die aan de voorwaarde voldoen CONDITIE: voorwaarde ORDER BY: bepaald de sorteervolgorde ASC: van klein naar groot DESC: van groot naar klein 17 February 2019

34 Single row functies Om gegevens te bewerken Eigenschappen
Resultaat per rij Van toepassing op elke rij van de query Eén of meerdere parameters Kunnen gebruikt worden in: SELECT WHERE ORDER BY 17 February 2019

35 Syntax van een Single row functie
Overzicht beschikbare functies: Character functions Number functions Date functions Conversion functions 17 February 2019

36 Character functions Als input een gegeven van het type char; een resultaat in numerieke of karakter vorm Voorbeeld: LOWER ( character_expression ) UPPER ( character_expression ) SUBSTRING ( expression , start , length ) LEN ( string_expression ) 17 February 2019

37 Character functions (2)
17 February 2019

38 Number functions Als input een numeriek gegeven en als output een numeriek gegeven Voorbeeld: ROUND ( numeric_expression , length [ , function ] ) 17 February 2019

39 Number functions 17 February 2019

40 Date functions Functies met betrekking tot datumvelden Voorbeeld:
DATEPART ( datepart , date ) DATEDIFF ( datepart , startdate , enddate ) + -> een aantal dagen optellen bij een datum - 17 February 2019

41 Conversion functions Converteer een expressie van één datatype naar een ander Voorbeeld CAST ( expression AS data_type ) 17 February 2019

42 Weergeven van gegevens uit meerdere tabellen
Join Gegevens uit meer dan één tabel op te vragen Rijen van verschillende tabellen samenvoegen op basis van gemeenschappelijke gegevens Soorten join-methoden: Equijoins Non-equijoins Outer joins Self joins 17 February 2019

43 Cartesiaans product Alle rijen van de eerste tabel verbonden met alle rijen van de tweede tabel 17 February 2019

44 Simple Join Query Join schrijven in WHERE-optie Richtlijnen
Laat de kolomnaam voorafgaan door de tabelnaam Aantal condities is afhankelijk van het aantal tabellen die verbonden zijn: N tabellen verbinden -> minstens N-1 voorwaarden nodig 17 February 2019

45 Equijoin Verbinding tussen tabellen op basis van dezelfde waarden
Bijvoorbeeld In welke afdeling zijn de medewerkers tewerkgesteld Meerdere voorwaarden mogelijk Net zoals bij een kolomnaam is het bij een tabel mogelijk een alias aan te geven 17 February 2019

46 Non-equijoin Verbinding tussen 2 tabellen, waarbij de relatie niet gelegd wordt op basis van ‘=‘ 17 February 2019

47 Outer join Left outer join aan de hand van een voorbeeld:
17 February 2019

48 Self-join Verbind van een bepaalde tabel aan zichzelf
Gebruik maken van alias Rijen te verbinden met rijen binnen deze zelfde tabel 17 February 2019

49 Self-join (2) Geef de naam van de medewerkers en de naam van zijn chef
17 February 2019

50 Oefeningen 17 February 2019


Download ppt "SQL Les 3 17 February 2019."

Verwante presentaties


Ads door Google