Door
Aya Azumi
op 21-09-2010 18:11
gewijzigd op 21-09-2010 21:28
2.926 views
Hallo,
Ik vroeg mij af...
Als ik een database zou hebben met landen (id - land - landnr - iets anders) en ik wil dat mijn script een loop maakt met 1 type land (b.v. gewoon nederland). Hoe vraag je dat dan aan?
Ik ben beginnend in php en was hiermee aan het spelen, maar kom er helaas niet uit.
Zijn er simpele oplossingen hiervoor?
als je 10 keer NL er in zou hebben, zet hij het toch 10 keer neer?
Zoals SanThe al zegt: dat kan niet kloppen. Je bent nu data dubbel aan het opslaan en dat betekent in 9 van de 10 gevallen dat je datamodel niet klopt. Doorloop het proces van normaliseren om zo tot een correct datamodel te komen.
De query met DISTINCT die gegeven wordt, zal wel werken maar is waarschijnlijk niet meer dan een lapmiddel. Los liever de echte fout (je incorrecte datamodel) op ;-)
Het is even een oefen/leer scriptje voor mij. Als je b.v met iets andes zou doen, zegmaar muziek, heb je verschillende genres;
rock, pop, classic, ect.
dan staat het waarschijnlijk er ook meerdere keren in.
En als je een lijst wil laten zien van de genres moet dat kunnen. Het werkte idd met distinct... thanks....
Het wordt direct duidelijk als je die normaliseren tutorial leest. Maar in dit geval zou je dan een aparte tabel krijgen om de genres in op te slaan:
genres
-----
id
genre
songs
-----
id
title
genre_id
Vervolgens kom je op het punt dat een song meerdere genres kan hebben, in dat geval introduceer je een koppeltabel. Maar daarover kun je alles lezen in de genoemde tutorial.