Select in Select
Tabel 1
username - artikel 1 - artikel 2
Jantje - voorbeeld 1 - voorbeeld 2
Pietje - voorbeeld 1
Henk - voorbeeld 2
en
Tabel 2
categorie - artikel 1 - artikel 2
hoofd - voorbeeld 1 - voorbeeld 2
Nu wil ik SELECT * FROM tabel 2 ORDER BY categorie ASC
Maar nu wil ik dus als henk is ingelogd dat hij vanuit de select kijkt naar voorbeeld 2 en alleen deze weergeeft
en bij jantje voorbeeld 1 en voorbeeld 2 en bij pietje voorbeeld 1 hoe werkt mijn SELECT clause dan ?
Ziet er niet echt genormalseerd uit.
Toevoeging op 04/09/2011 22:02:28:
ik wil dus eigenlijk dat als jantje is ingelogd voorbeeld 1 en voorbeeld uit tabel 2 zichtbaar zijn samen met de image van tabel 2 hoe kan ik dit het beste doen ?
mysql join Syntax
gebruik maken van de Gewijzigd op 05/09/2011 07:37:55 door Robert dat ben ik
ik wil graag dat als user: jantje is ingelogd dat alleen de categorieen weergeven worden die jantje mag zien
Dus ik heb bij het tabel jantje: de categorieen die hij mag zien. dus 2 tabellen alleen worden de dingen weergeven die in de eerste tabel worden opgenoemd en wordt er gekozen uit tabel 2. Kan er iemand alsjeblieft een voorbeeld SELECT FROM WHERE clausule maken ???
Ik zeg dit omdat ik namelijk denk dat je datamodel niet goed is. Wanneer die niet goed is is hij alleen maar onhandig. Zo je reactie te lezen op SanThe weet je ook niet wat normaliseren is?
Als ik zo naar je uitleg kijk, moet je zoiets hebben. Nu kunnen gebruikers gekoppeld zijn aan meerdere categorieën, maar kunnen categorieën ook meerdere gebruikers bevatten.
Voorbeeld
user
- id
- username
- password
category
- id
- title
- description
userCat
- user_id
- category_id
Succes!
Gewijzigd op 05/09/2011 10:15:27 door Milo S
ik heb
Users
- username
- password
- categorie 1
- categorie 2
- categorie 3
Categorie
- id
- kleur
- imgurl
En dan ingevuld:
Categorie
- id: 1
- kleur: Zwart
- imgurl: zwart.jpg
Categorie
- id: 2
- kleur: Geel
- imgurl: geel.jpg
Categorie
- id: 3
- kleur: Blauw
- imgurl: blauw.jpg
User: Jantje
- User: Jantje
- Password: 123
- Categorie 1: Blauw
- Categorie 2:
- Categorie 3:
User: Henk
- User: Henk
- Password: ABC
- Categorie 1: Zwart
- Categorie 2: Geel
- Categorie 3:
ik heb een script met $user dus ik weet wie er ingelogd is.
Als henk is ingelogd moeten Zwart en Geel zichtbaar zijn.
Als jan is ingelogd moet Blauw zichtbaar zijn.
(ondertussen weet ik nu wat normaliseren is :) )
Toevoeging op 06/09/2011 00:16:13:
Kan iemand alsjeblieft een voorbeeld select maken??? ik snap het niet alsjebliefttttt
Toevoeging op 06/09/2011 10:28:20:
iemand alsjeblieft?
Google maar eens op normaliseren.
Offtopic:
PM of ik naar je topic kijk liever niet, je ziet vanzelf wel wanneer ik dat gedaan heb. Anders kun je na (geloof ik) 3 dagen bumpen wat er voor zorgt dat je topic weer bij recente post komt.
Gewijzigd op 07/09/2011 09:57:04 door Milo S
ik weet niet hoe het werkt. Hij moet matchen: in de usertabel match met de categorie tabel en dan moet hij de dingen weergeven uit de categorie tabel die bij de usertabel worden gevraagd. is er iemand die het weet of die een beetje begrijpt hoe dat moet ik heb enkel de SELECT nodig
Ga éérst correct normaliseren en jouw datamodel opstellen, en ga je dan pas druk maken over een query. Doe je dat niet, ga je nog vele problemen krijgen en gaan al jouw queries onnodig complex worden. Maak je niet druk om die ene SELECT, maak je druk om de fouten in het datamodel. Die zijn het echte probleem: De taal SQL verwacht een correct datamodel, daar zijn relationele databases op gebaseerd. Wanneer je dat niet maakt, gaat al jouw code een drama worden en de performance om te huilen.