Als eerste, de query:
Het resultaat:
En het probleem:
Of ik nou ascending of descending deze query laat sorteren, het resultaat is altijd hetzelfde.
Het ophalen van de gegevens an sich gaat gewoon goed. Alleen het sorteren van kolommen zoals EpcAfwijking en Rapportdatum (welke een NULL waarde kunnen bevatten) gaat niet goed. Als ik als tweede order by kolom Id weghaal, dan gaat het sorteren van EpcAfwijking en Rapportdatum wel goed, echter gaat dan het sorteren op bijvoorbeeld Status niet goed (welke dezelfde waarde hebben).
Ik heb gezocht op internet en oplossingen met COALESCE bekeken, maar geen ervan werkte. Ik ben nou ook weer niet zo'n SQL goeroe dat ik alles weet (helaas).
Oh jah, gebruik MySql 5.0.27.
SQL:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| SELECT project.projectgegevensID AS Id, project.projectNaam AS Projectnaam, project.projectontwikkelaarNaam AS Projectontwikkelaar, Rapport.rapportDatum AS Rapportdatum, project.aantalWoningen AS AantalWoningen, (SUM((projectgegevens_epc.bouwaanvraagEPC - projectgegevens_epc.inspectieEPC) / projectgegevens_epc.bouwaanvraagEPC * 100) / COUNT(*)) AS EpcAfwijking, ( SELECT cms_module_feusers_properties.data FROM cms_module_feusers_properties WHERE cms_module_feusers_properties.title = 'fullname' AND cms_module_feusers_properties.userid = project.eindverantwoordelijke ) AS Inspecteur, ( SELECT cms_module_feusers_properties.data FROM cms_module_feusers_properties WHERE cms_module_feusers_properties.title = 'telephone' AND cms_module_feusers_properties.userid = project.eindverantwoordelijke ) AS Telefoon, project.status AS Status FROM project LEFT JOIN projectgegevens_epc USING (projectgegevensID) LEFT JOIN Rapport USING (projectgegevensID) WHERE project.contactID = '6' GROUP BY projectgegevens_epc.projectgegevens_epcID ORDER BY EpcAfwijking, Id ASC |
Het resultaat:
code:
1
2
3
| Id Projectnaam Projectontwikkelaar Rapportdatum AantalWoningen EpcAfwijking Inspecteur Telefoon Status 2 De bollenakker II Heijmans NV NULL 14 NULL Jan Inspecteur 0123456789 1 1 De bollenakker Bouwlust BV 2007-06-24 25 -28.749994505196891000 Jan Inspecteur 0123456789 1 |
En het probleem:
Of ik nou ascending of descending deze query laat sorteren, het resultaat is altijd hetzelfde.
Het ophalen van de gegevens an sich gaat gewoon goed. Alleen het sorteren van kolommen zoals EpcAfwijking en Rapportdatum (welke een NULL waarde kunnen bevatten) gaat niet goed. Als ik als tweede order by kolom Id weghaal, dan gaat het sorteren van EpcAfwijking en Rapportdatum wel goed, echter gaat dan het sorteren op bijvoorbeeld Status niet goed (welke dezelfde waarde hebben).
Ik heb gezocht op internet en oplossingen met COALESCE bekeken, maar geen ervan werkte. Ik ben nou ook weer niet zo'n SQL goeroe dat ik alles weet (helaas).
Oh jah, gebruik MySql 5.0.27.