Toon posts:

[MYSQL] Joins

Pagina: 1
Acties:
  • 32 views sinds 30-01-2008

Verwijderd

Topicstarter
Ik heb dus een aantal tabellen waaruit ik informatie moet hebben. Nu het probeem is dat ik voor sommige personen geen gegevens krijg als ik de tabellen join in de where omdat er voor die personen ook geen gegevens in die tabel zitten.

hier is wat ik doe:

select p.naam,Count(distinct(f1.Subdosid)),Count(distinct(f2.Subdosid)),Count(distinct(f3.Subdosid))

from persoon p, clientstatus c , dos_subdos d , fase2 f2 , fase1 f1, fase3 f3

where c.Consulent = p.persoonid and c.dossierid = d.dossierid and d.subdosid = f2.subdosid and f2.startdatum > '2004-01-01' and d.subdosid = f1.subdosid and f1.startdatum > '2004-01-01' and d.subdosid = f3.subdosid and f3.startdatum > '2004-01-01'

group by p.naam

Ik link de tabellen aan de hand van de id's, nu als er voor een persoon geen record is in fase3 bijvoorbeeld dan wordt die ook nie getoont. Ik Zou dan gewoon een 0 willen krijgen.

Volgens mij heeft dit iets te maken met de soort join het is al effe geleden dat ik mysql gedaan hebt en het zoeken op google bracht ook niet veel op.

Iemand een idee?

  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
code tags
basic sql

moet ik doorgaan?

Om je niet helemaal met een kluitje het riet in te sturen geef ik je de term left outer join mee.

Suc6

  • mjax
  • Registratie: September 2000
  • Laatst online: 14-05 11:00
Gebruik LEFT JOINS en het gaat werken. Zie MySQL manual.

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 16:59

gorgi_19

Kruimeltjes zijn weer op :9

In de PW-FAQ is zelfs ook al het eea geschreven over Joins :)
P&W FAQ - SQL

Anyway, deze kan wel dicht; met de juiste zoekwoorden (die je nu hebt) moet je er wel uit kunnen komen.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Dit topic is gesloten.