Ich habe eine Tabelle mir 3 Spalten:
ID | Wert1 | Wert2
Die ID ist nicht uniqe, sondern wird aus einer anderen Tabelle immer wieder eingetragen. Nun habe ich natürlich öfters die gleiche ID in der ersten Spalte.
Dazu möchte ich die Summe von "Wert1" und die Summe von "Wert2" passend zu den ID´s ins Verhältnis setzen.
Wie kommen ich da weiter:
SELECT SUM(Wert1), SUM(Wert2)
GROUP BY ID
Vielen Dank.
ha ? was willst du da genau ins verhältnis setzen ?
SELECT SUM(Wert1), SUM(Wert2)
GROUP BY ID
wird dir halt die summe von wert1 und wert2 in gleichen IDs ausgeben, aber was willst du jetzt genau ?
Also,
Bsp:
Summe Wert 1: 100 zu ID 1 | Summe Wert2: 10 zu ID 1
Somit beträgt Wert2 10% von Wert 1. Das ist das Ergebnis, dass mir am Ende angezeigt werden soll, passend zur ID.
prozentrechnung :D
http://www.mathematik.de/
http://www.mathe-trainer.com/
Also willst du Krieg spielen?
ID = Land
Wert 1 = so viele hab ich in der schlacht getötet
Wert 2 = so oft bin ich getötet worden.
Sorry, mir ist nichts besseres eingefallen.
Rechnen kann ich, danke für die Links,
Aber wie lautet der sql-string, bitte?!
Von mir aus kannst Du es auch ein Kriegsspiel nennen, hauptsche ich bekomme die bescheidene Statistik.
also willst du alle Werte 1 von ID 123 zusammen zählen und alle Werte 2 auch noch mal. Und dann nachher Dividieren?
select sum(wert1)/sum(wert2) as verhaeltnis group by ID
guck ob es das ist, das du willst..
Also gehen wir mal aus, das:
Wert1=Spiele | Wert2=überlebt, um mal bei dem Kriegsspiel zu bleiben.
da mache ich mathematisch folgendes: überlebt/Spiele*100, um einen Prozentwert zu erhalten.
Wenn jetzt aber überlebt=0 ist, habe ich ein Problem, oder nicht?
Wie kann ich in der SQL-Anweisung festlegen, wenn überlebt = 0 ist, dass er mir verhaeltnis auf 100% setzt. Umgesetzt müsste die SQL-Anweisung von Campus so lauten:
SELECT SUM(überlebt)/SUM(spiele) AS verhaeltnis
GROUP BY ID
In der PHP-Anwesiung kann ich dann *100 ausführen, oder geht das mit einem if-Befehl auch im SQL-String?
SELECT if(SUM(überlebt)=0,100,SUM(überlebt)/SUM(spiele)*100) AS verhaeltnis,ID from tabellenname GROUP BY ID
das ist ja mal gut.
wusste gar nicht, dass man schon in sql mit IF arbeiten kann. :dontknow:
wieder was gelernt.... :D