de query
Zoals je ziet is het datamodel nogal veranderd. Nu ben je op het punt gekomen dat je de klanten database (bijna) niet verder kunt vereenvoudigen. Het doel van normaliseren is dat op het laatst elk gegeven maar een keer in de database voorkomt.
Als we nu het fruit er weer bijpakken:
Iemand koopt bij mij een appel.
Let op
Dat is een makkelijke Query en meer is er niet nodig voor je webshop.
Het uit de database halen van de gegevens gaat wat lastiger.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
SELECT
a.klant_naam,
a.klant_voorlett,
b.adres_id,
b.huisnummer,
c.plaats_naam,
d.straat_naam,
e.fruit_naam,
e.fruit_prijs,
f.adres_id
FROM
Klanten AS a,
adres AS b,
Plaatsen AS c,
Straten AS d,
Fruit AS e,
Adresklant AS f
WHERE
f. Klant_id=a.klant_id
AND
c.plaats_id=b.plaats_id
AND
d.klant_id=a.klant_id
AND
f.straat_id=b.straat_id
AND
e.fruit_id=verkopen.fruit_id
AND
Verkopen.klant_id=a.klant_id
AND
Verkopen.waneer > een datum
/
Hopelijk ben ik duidelijk geweest en snapt iedereen wat ik bedoel.
Reacties zijn welkom (leert iedereen weer van)
Klaasjan
Sorry voor de hoofdletters want ik werk in MS Word.
Ik heb de tut na gisteravond nog iets aangepast. Hopelijk klopt alles nog.
a.klant_naam,
a.klant_voorlett,
b.adres_id,
b.huisnummer,
c.plaats_naam,
d.straat_naam,
e.fruit_naam,
e.fruit_prijs,
f.adres_id
FROM
Klanten AS a,
adres AS b,
Plaatsen AS c,
Straten AS d,
Fruit AS e,
Adresklant AS f
WHERE
f. Klant_id=a.klant_id
AND
c.plaats_id=b.plaats_id
AND
d.klant_id=a.klant_id
AND
f.straat_id=b.straat_id
AND
e.fruit_id=verkopen.fruit_id
AND
Verkopen.klant_id=a.klant_id
AND
Verkopen.waneer > een datum
/
Hopelijk ben ik duidelijk geweest en snapt iedereen wat ik bedoel.
Reacties zijn welkom (leert iedereen weer van)
Klaasjan
Sorry voor de hoofdletters want ik werk in MS Word.
Ik heb de tut na gisteravond nog iets aangepast. Hopelijk klopt alles nog.
Inhoudsopgave
- Het datamodel.
- Waarom schrijf ik deze tut.
- In deze tut zal ik het volgende behandelen
- Wat is normalisatie van een database.
- de bedenker
- Nu een veel belangrijker vraag
- 2e reden
- de query