Situatieschets:
Deze query toont mij de vrachtonderdelen + hoeveelheden die nog over zijn om te kunnen verzenden. Dit gaat prima wanneer er in de tabel CargoDetails (=koppeltabel) enkele records staan van onderdelen (of een bepaalde oplage van dat onderdeel) die al verzonden zijn, maar wanneer er nog niets verzonden is en de tabel CargoDetails dus geen records bevat voor dat bepaalde onderdeel, geeft de query niets terug terug. Dit terwijl mijn verwachte output zou zijn dat alle onderdelen + bijbehorende hoeveelheden van een bepaalde order getoond zullen worden.
Het gaat om de volgende query:
Na wat debug werk kwam ik er achter dat de sum van de subquery in het geval van een niet overeenkomend PartNr geen 0 oplevert maar geen enkele record. Hierdoor kan de hoofdquery niets teruggeven omdat de subquery geen waarde oplevert. Kan iemand een tip van de sluier geven hoe ik wel de waarde 0 kan laten teruggeven zodat ik hierdoor een PartNr, Category en CirculationLeft kan construeren?
Voorbeeld:
PartNr Category CirculationLeft
1 Boeken 200
2 Folders 0
Laatste record kan op dit moment dus niet gecontrueerd worden
Deze query toont mij de vrachtonderdelen + hoeveelheden die nog over zijn om te kunnen verzenden. Dit gaat prima wanneer er in de tabel CargoDetails (=koppeltabel) enkele records staan van onderdelen (of een bepaalde oplage van dat onderdeel) die al verzonden zijn, maar wanneer er nog niets verzonden is en de tabel CargoDetails dus geen records bevat voor dat bepaalde onderdeel, geeft de query niets terug terug. Dit terwijl mijn verwachte output zou zijn dat alle onderdelen + bijbehorende hoeveelheden van een bepaalde order getoond zullen worden.
Het gaat om de volgende query:
code:
1
2
3
4
| SELECT P.PartNr, P.Category, P.Circulation, P.Circulation-(SELECT Sum(CD.Circulation) FROM CargoDetails CD Where CD.PartNr = P.PartNr) AS CirculationLeft FROM Part P WHERE P.Circulation-(SELECT Sum(CD.Circulation) FROM CargoDetails CD Where CD.PartNr = P.PartNr)> 0 AND OrderNr = :OrderNr |
Na wat debug werk kwam ik er achter dat de sum van de subquery in het geval van een niet overeenkomend PartNr geen 0 oplevert maar geen enkele record. Hierdoor kan de hoofdquery niets teruggeven omdat de subquery geen waarde oplevert. Kan iemand een tip van de sluier geven hoe ik wel de waarde 0 kan laten teruggeven zodat ik hierdoor een PartNr, Category en CirculationLeft kan construeren?
Voorbeeld:
PartNr Category CirculationLeft
1 Boeken 200
2 Folders 0
Laatste record kan op dit moment dus niet gecontrueerd worden
[ Voor 9% gewijzigd door Verwijderd op 12-04-2005 16:23 ]