Liebe/-r Experte/-in,
ich habe folgendes Problem, und bin damit schon 2 Tage beschäftigt.
Die Daten befinden sich ganz unten, beschränkt auf das WIchtigste, query und nur notwendige Spalten.
Ich möchte die Gesammtsumme aufgelistet haben nach monat+jahr, damit ich mir ein schickes Diagramm machen kann, was ich so ausgebe an Technikkram.
In der DB sind mehrere Tage im Monat (typ date) die zusammenadiert werden müssen.
Theoretisch sieht das gut aus, aber irgendwie kommt es mir so vor, das
a) trotz angabe das sortiert werden soll nach MONAT sortiert wird.
Ich will aber es so haben, das nach neustem Monat im eingetragenen jahr
es angezeigt wird.
Ich könnte auch TIMESTAMP nehmen, sofern das viel besser ist.
Allerdings intressiert mich nur das datum.
b) es falsch berechnet wird.
Liegt es vielleicht daran das ich Dezimalzahlen nehme?
Anderes geht nicht da ich den genauen Preis eintragen will.
Vielen, vielen Dank im Vorraus!
Flo
SQL-DB:
CREATE TABLE IF NOT EXISTS gekaufteartikel
(
id
int(10) NOT NULL AUTO_INCREMENT,
favorit
enum(‚0‘,‚1‘) CHARACTER SET latin1 NOT NULL DEFAULT ‚0‘,
kaufdatum
date NOT NULL,
Produktname
varchar(100) CHARACTER SET latin1 NOT NULL,
Preis
decimal(6,2) NOT NULL,
URL_Geizhals
varchar(100) CHARACTER SET latin1 NOT NULL,
PRIMARY KEY (id
)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=32 ;
PHP-Code:
$resultTABELLE = mysql_query(„SELECT MONTH(DATE(kaufdatum
)) AS Monat
, YEAR(kaufdatum
) AS Jahr
, SUM(Preis
) AS SummePreis
FROM $Tabellennamen
GROUP BY MONTH(kaufdatum
)“) OR DIE (mysql_error());
while($row2TABELLE = mysql_fetch_array($resultTABELLE))
{
echo "
>";
echo $row2TABELLE[‚Monat‘];
echo „/“;
echo $row2TABELLE[‚Jahr‘];
echo ": ";
echo $row2TABELLE[‚SummePreis‘];
echo " EUR
";
}