Archiv verlassen und diese Seite im Standarddesign anzeigen : Maximum ermitteln
ktroniclein
01-06-2005, 12:42
Folgendes Problem:
Meine Tabelle:
DATUM, NAME ,STÜCK
01.01.01, olli ,2
01.01.01, olli ,3
02.01.01, mk ,1
03.01.01, bh ,1
03.01.01, bh ,1
03.01.01, olli ,4
Meine Abfrage 'SELECT MAX(STÜCK) FROM tabelle WHERE name LIKE olli'
Liefert logischerweise 4. Sie sollte aber in meinem Projekt 5 ergeben (Die Stückzahl vom 01.01.01).
Gibt es eine Möglichkeit bei MySQL das Maximum irgendwie gruppiert abzufragen, also dass die Werte gleicher Daten addiert werden und dieses Maximum ermittelt wird. Habe schn einiges mit GROUP und SUM ausprobiert, aber ohne Erfolg.
VIELEN DANK
Christoph
01-06-2005, 12:57
create view sums_per_day as select sum(stueck) as stueck,name,datum group by datum,name;
select stueck, name from sums_per_day where stueck = (select max(stueck) from sums_per_day);
create table test (
dt date,
name varchar2(100),
stk number(11)
);
in oracle würd ichs vermutlich so machen:
select max(b) from (select dt a, sum(stk) b from test group by dt);
in mysql so :-)
select dt a, sum(stk) b from test group by dt order by b desc limit 1;
ktroniclein
01-06-2005, 13:28
Langsam...(bitte)
Also mein Code (in PHP) sieht wie folgt aus:
$sql = 'SELECT MAX(stk) '
. ' FROM `ddkstat` '
. ' WHERE `name` '
. ' LIKE \'' . $name . '\'
Christoph:
Wenn ich deinen Code richtig verstehe, handelt es sich um 2 Abfragen, aber mehr verstehe ich nicht????
klewan:
für was steht a und b und wo ist die max abfrage und die kombination mit dem Namen
die where hab ich nur aus testzwecken genau so wie a und b erfunden bzw weggelassen
mach die where rein und group by dt,name sollt reichen
ktroniclein
01-06-2005, 13:44
Irgendwie versteh ich das einfach nicht.....
select date -> selektiert mir doch das DAtum, ich will aber das maximum anzeigen???
Sorry für die vielen Dummen Fragen
Christoph
01-06-2005, 20:46
Irgendwie versteh ich das einfach nicht.....
select date -> selektiert mir doch das DAtum, ich will aber das maximum anzeigen???
Ohne dich mit SQL zu beschäftigen wirst Du wohl nicht weiterkommen. Schau dir mal in irgendeinem Datenbanken/SQL-Buch das Kapitel zum Thema Gruppieren und Aggregatfunktionen an.
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.