Hoe kan ik zoeits voorelkaar krijgen... ik heb 2 tabellen uitgeleend en boeken.
Het veld uitgeleend in boeken bevat de id van uitgeleend...
aan in boeken is weer gekoppeld aan een lid id
Nu wil ik bijvoorbeeld van lid 2 alle uitgeleende boeken zien... dus als ze in uitgeleend staan...
En dan moet ik met die uitslag (Bijvoorbeeld 3,5,8 en 10) alle boeken uit de tabel boeken halen die die uitslag in uitgeleend heeft staan.
Kan dat met zoiets:
[code]
SELECT * FROM boeken WHERE uitgeleend = SELECT id FROM uitgeleend WHERE aan = 4
[code]
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| CREATE TABLE uitgeleend (
id mediumint(9) NOT NULL auto_increment,
aan mediumint(9) NOT NULL default '0',
datum varchar(10) NOT NULL default '',
PRIMARY KEY (id),
UNIQUE KEY id (id)
)
CREATE TABLE boeken (
id mediumint(9) NOT NULL auto_increment,
ISBN varchar(13) NOT NULL default '0',
titel varchar(250) NOT NULL default '',
auteur varchar(250) NOT NULL default '',
uitgever varchar(250) NOT NULL default '',
beschrijving mediumtext NOT NULL,
genre varchar(250) NOT NULL default '',
aantal_pag mediumint(9) NOT NULL default '0',
editie varchar(10) NOT NULL default '',
aanwezig enum('0','1') NOT NULL default '0',
uitgeleend mediumint(9) NOT NULL default '0',
PRIMARY KEY (id),
UNIQUE KEY id (id)
) |
Het veld uitgeleend in boeken bevat de id van uitgeleend...
aan in boeken is weer gekoppeld aan een lid id
Nu wil ik bijvoorbeeld van lid 2 alle uitgeleende boeken zien... dus als ze in uitgeleend staan...
code:
1
| SELECT id FROM uitgeleend WHERE aan = 2 |
En dan moet ik met die uitslag (Bijvoorbeeld 3,5,8 en 10) alle boeken uit de tabel boeken halen die die uitslag in uitgeleend heeft staan.
Kan dat met zoiets:
[code]
SELECT * FROM boeken WHERE uitgeleend = SELECT id FROM uitgeleend WHERE aan = 4
[code]