login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[SQL] Tables Linken

Offline Sar - 19/09/2007 12:32
Avatar van SarPHP interesse Ik had dus net een topic geopent over het linken van tables, en heb de tutorials die hier op de site staan doorgenomen en getest, en dat snap ik nu wel.

Maar hoe kan ik nu meerdere tabellen met elkaar linken.
Als ik bijvoorbeeld een lijst heb met gebruikers, en via die lijst moet ik uit 2 andere tabellen wat gegevens halen.

Voorbeeld.
je hebt een site waar je aan kan geven wat voor computer je hebt.

---tabel processor---
500mhz
1000mhz
2000mhz

---tabel geheugen---
32mb
64mb
128mb

---tabel gebruiker---
naam
processor
geheugen

nu wil ik kijken wat voor processor en geheugen bijv. kees heeft.

6 antwoorden

Gesponsorde links
Offline Rik - 19/09/2007 12:40
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Je geeft elke soort processor een processor_id en elk soort geheugen een geheugen_id. In de tabel gebruiker sla je dan het processor_id en het geheugen_id op.

Met een join kan je alles vervolgens weer ophalen.
Offline Sar - 19/09/2007 12:43
Avatar van Sar PHP interesse Dat heb ik, en dit is de query die ik gebruik.

  1. SELECT proc.name
  2. FROM proc
  3. LEFT JOIN users
  4. ON( users.proc = proc.id_c )
  5. WHERE users.name='".$_SESSION['user']."'


Maar moet ik dan gewoon nog een keer LEFT JOIN erin zetten?
Offline Rik - 19/09/2007 15:09
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Volgens mij moet je andersom joinen.
  1. SELECT proc.name
  2. FROM users
  3. WHERE users.name='".$_SESSION['user']."'
  4. LEFT JOIN proc
  5. ON proc.id_c = users.proc
Offline marten - 19/09/2007 15:25
Avatar van marten Beheerder Een handigheidje bij het maken van JOINS wanneer je nog niet zo gevorderd bent is MySQL navicat. Hier kan je de velden die hetzelfde zijn (FK's) naar elkaar slepen en vervolgens een query opbouwen.
Offline Sar - 19/09/2007 17:38
Avatar van Sar PHP interesse
Boukefalos schreef:
Volgens mij moet je andersom joinen.[..code..]


Dit maakt niet uit, dit werkt zo ook wel, ik moet alleen weten hoe ik het met meerdere tabellen doe, ik zal het idee van Marten eens proberen!
Offline Rik - 19/09/2007 20:23
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
En als je twee joins gebruikt? Zoiets dus:
  1. SELECT proc.name, geheugen.name
  2. FROM users
  3. WHERE users.name='".$_SESSION['user']."'
  4. LEFT JOIN proc
  5. ON proc.id_c = users.proc
  6. LEFT JOIN geheugen
  7. ON geheugen.id = users.geheugen
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.18s