Sommeren (SUM) binnen een query
Ik heb de volgende query (die goed werkt!):
Code (php)
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
28
29
30
31
32
33
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
28
29
30
31
32
33
<?php
select
c.artikelnummer,
c.titel,
c.uitvoerende,
COUNT(IF(month(factuurdatum) = 1, 'Ja', NULL)) AS januari,
COUNT(IF(month(factuurdatum) = 2, 'Ja', NULL)) AS februari,
COUNT(IF(month(factuurdatum) = 3, 'Ja', NULL)) AS maart,
COUNT(IF(month(factuurdatum) = 4, 'Ja', NULL)) AS april,
COUNT(IF(month(factuurdatum) = 5, 'Ja', NULL)) AS mei,
COUNT(IF(month(factuurdatum) = 6, 'Ja', NULL)) AS juni,
COUNT(IF(month(factuurdatum) = 7, 'Ja', NULL)) AS juli,
COUNT(IF(month(factuurdatum) = 8, 'Ja', NULL)) AS augustus,
COUNT(IF(month(factuurdatum) = 9, 'Ja', NULL)) AS september,
COUNT(IF(month(factuurdatum) = 10, 'Ja', NULL)) AS oktober,
COUNT(IF(month(factuurdatum) = 11, 'Ja', NULL)) AS november,
COUNT(IF(month(factuurdatum) = 12, 'Ja', NULL)) AS december,
COUNT(b.id) as totaal
from
shop__bestellingen as b
join
shop__cd as c
on
c.artikelnummer = b.artikelnummer
where
YEAR(factuurdatum) = $cJaar
group by
artikelnummer
order by
totaal desc
limit
$cHitLijst
?>
select
c.artikelnummer,
c.titel,
c.uitvoerende,
COUNT(IF(month(factuurdatum) = 1, 'Ja', NULL)) AS januari,
COUNT(IF(month(factuurdatum) = 2, 'Ja', NULL)) AS februari,
COUNT(IF(month(factuurdatum) = 3, 'Ja', NULL)) AS maart,
COUNT(IF(month(factuurdatum) = 4, 'Ja', NULL)) AS april,
COUNT(IF(month(factuurdatum) = 5, 'Ja', NULL)) AS mei,
COUNT(IF(month(factuurdatum) = 6, 'Ja', NULL)) AS juni,
COUNT(IF(month(factuurdatum) = 7, 'Ja', NULL)) AS juli,
COUNT(IF(month(factuurdatum) = 8, 'Ja', NULL)) AS augustus,
COUNT(IF(month(factuurdatum) = 9, 'Ja', NULL)) AS september,
COUNT(IF(month(factuurdatum) = 10, 'Ja', NULL)) AS oktober,
COUNT(IF(month(factuurdatum) = 11, 'Ja', NULL)) AS november,
COUNT(IF(month(factuurdatum) = 12, 'Ja', NULL)) AS december,
COUNT(b.id) as totaal
from
shop__bestellingen as b
join
shop__cd as c
on
c.artikelnummer = b.artikelnummer
where
YEAR(factuurdatum) = $cJaar
group by
artikelnummer
order by
totaal desc
limit
$cHitLijst
?>
Nu wil ik i.p.v. records tellen, het factuurbedrag per maand sommeren middels de SUM
Ik dacht de volgende aanpassing te doen, die helaas niet werkt:
Wie kan mij helpen aan de juiste syntax om het veld <factuurbedrag> per maand te sommeren?
George
Toevoeging op 20/10/2013 13:59:52:
Ik heb de oplossing zelf gevonden:
Topic gesloten
Code (php)
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
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
c.artikelnummer,
c.titel,
c.uitvoerende,
sum(c.prijs) as totaal,
sum(IF(month(factuurdatum) = 1,c.prijs,0)) AS januari,
sum(IF(month(factuurdatum) = 2,c.prijs,0)) AS februari,
sum(IF(month(factuurdatum) = 3,c.prijs,0)) AS maart,
sum(IF(month(factuurdatum) = 4,c.prijs,0)) AS april,
sum(IF(month(factuurdatum) = 5,c.prijs,0)) AS mei,
sum(IF(month(factuurdatum) = 6,c.prijs,0)) AS juni,
sum(IF(month(factuurdatum) = 7,c.prijs,0)) AS juli,
sum(IF(month(factuurdatum) = 8,c.prijs,0)) AS augustus,
sum(IF(month(factuurdatum) = 9,c.prijs,0)) AS september,
sum(IF(month(factuurdatum) = 10,c.prijs,0)) AS oktober,
sum(IF(month(factuurdatum) = 11,c.prijs,0)) AS november,
sum(IF(month(factuurdatum) = 12,c.prijs,0)) AS december
from
shop__bestellingen as b
join
shop__cd as c
on
c.artikelnummer = b.artikelnummer
where
YEAR(factuurdatum) = 2013
group by
artikelnummer
c.artikelnummer,
c.titel,
c.uitvoerende,
sum(c.prijs) as totaal,
sum(IF(month(factuurdatum) = 1,c.prijs,0)) AS januari,
sum(IF(month(factuurdatum) = 2,c.prijs,0)) AS februari,
sum(IF(month(factuurdatum) = 3,c.prijs,0)) AS maart,
sum(IF(month(factuurdatum) = 4,c.prijs,0)) AS april,
sum(IF(month(factuurdatum) = 5,c.prijs,0)) AS mei,
sum(IF(month(factuurdatum) = 6,c.prijs,0)) AS juni,
sum(IF(month(factuurdatum) = 7,c.prijs,0)) AS juli,
sum(IF(month(factuurdatum) = 8,c.prijs,0)) AS augustus,
sum(IF(month(factuurdatum) = 9,c.prijs,0)) AS september,
sum(IF(month(factuurdatum) = 10,c.prijs,0)) AS oktober,
sum(IF(month(factuurdatum) = 11,c.prijs,0)) AS november,
sum(IF(month(factuurdatum) = 12,c.prijs,0)) AS december
from
shop__bestellingen as b
join
shop__cd as c
on
c.artikelnummer = b.artikelnummer
where
YEAR(factuurdatum) = 2013
group by
artikelnummer
Gewijzigd op 20/10/2013 13:39:13 door George van Baasbank
Er zijn nog geen reacties op dit bericht.