Tabelle mit php sortieren
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
addieren
ausprobieren
befehl
benutzername
berechnung
code
datenbank
datum
dynamischen tabellen
einzeln drei
ende
kleineren aktionen
ordern
prinzip
sagen
sortieren
spalten
super danke
tabelle
virtuelle spalte
-
Normalerweise sortiere ich meine dynamischen Tabellen via mysql Befehl.
In disem Spziellen Fall geht das jedoch leider nicht, da vorher php etwas ausrechnen muss (aus drei Spalten einen Wert errechen).
Nach diesem errechneten Wert soll nun die tabelle sortiert werdfen.
Ich habe es schon hinbekommen den errechneten Wert zu sortieren aber die andern Daten die zu dem Wert gehören sollen mit sortiert werden (Benutzername, Datum,...).
Wie amche ich das? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
falls du die werte für die berechnung alle in der selben datenbank hast könntes du es so lösen:
SELECT spalte1, spalte2, wert1+wert2 AS "berechnung" FROM tabelle ORDER BY berechnung
mfg -
syberpsace schrieb:
falls du die werte für die berechnung alle in der selben datenbank hast könntes du es so lösen:
SELECT spalte1, spalte2, wert1+wert2 AS "berechnung" FROM tabelle ORDER BY berechnung
mfg
Das klingt gut, ich werde es mal ausprobieren.
Kann man ihm dann denn irgendwie noch sagen das er es absteigend sortieren soll?
Beitrag zuletzt geändert: 8.3.2010 17:19:19 von no-smoke -
das geht mit dem hübschen wörtchen DESC am ende der query
also:
SELECT spalte1, spalte2, wert1+wert2 AS "berechnung" FROM tabelle ORDER BY berechnung DESC
mfg -
syberpsace schrieb:
das geht mit dem hübschen wörtchen DESC am ende der query
also:
SELECT spalte1, spalte2, wert1+wert2 AS "berechnung" FROM tabelle ORDER BY berechnung DESC
mfg
Ich habe jetzt mal versucht das ganze auszuprobieren, jedoch verstehe ich das mit wert1 und wert2 nicht. Im Prinzip soll er ja für jede ID einzeln drei Spalten (in der selben Zeile) addieren. -
das ist so gemeint
Die Berechnung aknnst Du im mysql machen lassen, du brauchst das nicht im php machen
wenn du also eiine Berechnung aus drei Spalten deiner Tabellen machen willst, dann kannstdu im mysql
SELECT spalte1+spalte2+spalte3 FROM tabelle
machen.
mit dem
AS
kannst du dem Berechneten Wert einen Namen geben
Also
SELECT spalte1+spalte2+spalte3 AS meine_summe FROM tabelle
bedeutet dass du eine "virtuelle" Spalte "meine_summe" die sich aus den drei Spalten spalte1 spalte2 und spalte3 berechnet bekommst.
Alles klar ?
-
Wenn du den Wert später nicht brauchst, kannst du auch direkt im ORDER BY-Wert rechnen. Dann bekommt PHP den Wert garnicht. Bei kleineren Aktionen ist das egal, wenn es aber um große Informationsmengen geht, die sehr oft in kurzer Zeit aufgerufen werden sollen, dann spürt man den Unterschied. Soll der Wert aber später in PHP vorhanden sein, dann mache es so, wie Syberpsace es gesagt hat.
-
franco-bez schrieb:
das ist so gemeint
Die Berechnung aknnst Du im mysql machen lassen, du brauchst das nicht im php machen
wenn du also eiine Berechnung aus drei Spalten deiner Tabellen machen willst, dann kannstdu im mysql
SELECT spalte1+spalte2+spalte3 FROM tabelle
machen.
mit dem
AS
kannst du dem Berechneten Wert einen Namen geben
Also
SELECT spalte1+spalte2+spalte3 AS meine_summe FROM tabelle
bedeutet dass du eine "virtuelle" Spalte "meine_summe" die sich aus den drei Spalten spalte1 spalte2 und spalte3 berechnet bekommst.
Alles klar ?
Super, danke jetzt habe ich es verstanden und es klappt alles. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage