Ik heb de volgende query:
SELECT DISTINCT(persnr), werknr, SUM(o100) as o100, SUM(o125) as o125, SUM(o150) as o150, SUM(o200) as o200, SUM(tvt) as tvt, SUM(vrij) as vrij, SUM(bijz_verlof) as bijz_verlof, SUM(ziekte) as ziekte, lc_bv FROM uren WHERE MONTH(uren.datum)='$_POST[maand]' AND YEAR(uren.datum)='$_POST[jaar]' GROUP BY werknr ORDER BY persnr,datum;

Op zich werkte deze query prima, echter, door een aanpassing moet ik hem wijzigen, maar ik krijg het niet voor elkaar om hem correct te wijzigen.
Eenvoudig gezegd, maar niet mogelijk, zou ik eigenlijk een distinct(persnr,lc_bv) moeten doen, maar distinct accepteert maar 1 veld.

Met de query, krijg ik per persnr de verschillende totalen van de andere velden. Echter, door een aanpassing moet ik nu de verschillende totalen van de andere velden per persnr hebben en dan ook nog eens per lc_bv.

Het is wat moeilijk uitleggen, maar hopelijk begrijpt iemand wat ik bedoel. :P
Oke prima, je bent er blijkbaar niet van te overtuigen dat je/jullie nu een verkeerde keuze gemaakt hebben en een weg in slaan die uiteindelijk tot onjuiste, corrupte en missende resultaten kan leiden.

Maar goed, wat ik je dan nog wel even mee wil geven voor deze query is dat je je aliassen niet slim gekozen hebt. Je gebruikt namelijk voor een alias dezelfde naam als de kolomnaam (SUM(o100) AS o100), en ook dat kan problemen op gaan leveren. Verander de alias dus bijvoorbeeld even in o100_totaal...
@Blanche

Je hebt me wel degelijk overtuigd, ik zou het liever ook anders doen, maar die tijd wordt me niet gegeven. :)

Die aliassen ga ik nog wel iets aan doen.

Reageren