LEFT JOIN werkt niet goed

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Marco V

Marco V

19/01/2011 20:59:32
Quote Anchor link
Ik probeer tabellen uit mijn database samen te voegen:

een tabel met alle meetpunten:

# TABEL MEETPUNTEN
===================================
ID | OMSCHRIJVING | VOLGORDE | ...
===================================
1 | voorbereiding | 1
2 | gestart | 2
3 | gereed | 3
4 | afgesloten | 4

een tabel met planregels:

# TABEL PROJECTPLANNING
===============================================
ID | PROJECTID | MEETPUNTID | EXTRAMEETPUNTID |
===============================================
1 | 5 | 1 | NULL |
2 | 5 | 1 | 1 |
3 | 6 | 1 | NULL |
4 | 5 | 2 | NULL |


Ik wil een planningoverzicht met ALLE MEETPUNTEN en (waarbij aanwezig) ook de geplande meetpunten, waarbij geen EXTRAMEETPUNTID (NULL of 0) bestaat.
Dit probeer ik met de volgende query:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$sql
= 'SELECT MEETPUNTEN . ID as MEETPUNTEN_ID , MEETPUNTEN . OMSCHRIJVING , MEETPUNTEN . BLOCK , PROJECTPLANNING . * FROM MEETPUNTEN LEFT JOIN PROJECTPLANNING ON MEETPUNTEN . ID = PROJECTPLANNING . MEETPUNTID WHERE PROJECTID = 5 AND EXTRAMEETPUNTID IS NULL OR EXTRAMEETPUNTID = 0 ORDER BY VOLGORDE , OMSCHRIJVING LIMIT 0, 30 ';
?>


De query geeft echter niet het gewenste resultaat, de left join zou er toch voor moeten zorgen dat alle resultaten van MEETPUNTEN worden getoond en alleen de regels met een match uit PROJECTPLANNING worden samengevoegd.

Kortom, Wat doe ik hier niet goed? Ik zou graag het volgende resultaat willen hebben voor project 5:

# RESULTAAT
+====================================================================+
| ID | MEETPUNTEN_ID | PROJECTID | OMSCHRIJVING | EXTRAMEETPUNTID |
+====================================================================+
| 1 | 1 | 5 | voorbereiding | NULL |
| 4 | 2 | 5 | gestart | NULL |
| NULL | 3 | NULL | gereed | NULL |
| NULL | 4 | NULL | afgesloten | NULL |
+====================================================================+
 
Er zijn nog geen reacties op dit bericht.



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.