Spalten berechnen, vorher nach Eintrag sortieren

sebastian75

Grünschnabel
Hallo,

ich fange eben erst an mich mit MySQL und Datenbanken auseinander zu setzen. Allerdings habe ich auch jetzt schon das erste große Problem:

Ich habe eine Datenbank erstellt mit folgenden Spalten, bzw. Inhalten:

USER | LIMIT | DOWNLOAD | LASTCHANGE
nameA | 107374182400 | 44920897914 | 2013-04-01 00:00:07
nameA | 107374182400 | 54419759297 | 2013-04-02 00:00:07
nameA | 107374182400 | 54419759297 | 2013-04-03 00:00:08
nameB | 107374182400 | 0 | 2013-04-01 00:00:07
nameB | 107374182400 | 61301521869 | 2013-04-02 00:00:07
nameB | 107374182400 | 79844622980 | 2013-04-03 00:00:08

Ich möchte nun eine Liste/Ausgabe erstellen mit
"nameA" hatte:
am 01.04.2013 Verbrauch = "107374182400 - 44920897914"
am 02.04.2013 Verbrauch = "107374182400 - 54419759297"
am 03.04.2013 Verbrauch = "107374182400 - 54419759297"
"nameB" hatte:
am 01.04.2013 Verbrauch = "107374182400 - 0"
am 02.04.2013 Verbrauch = "107374182400 - 61301521869"
am 03.04.2013 Verbrauch = "107374182400 - 79844622980"

Mir fehlt nun allerdings der Anfang. Wie kann man A) eine Liste mit allen Einträgen in USER erstellen so das der User immer nur einmal aufgelistet wird und dann B) anhand von "nameA" die Spalten auslesen und berechnen lassen, bzw. dann auch noch Bezug auf das Datum nehmen?

Beste Grüße
Sebastian
 
SELECT DISTINCT user FROM Tabelle ORDER BY user;

damit sollte ich schon einmal die "user" einzeld aufgelistet haben. Bleibt noch Problem B)
 
Hallo im Forum!

Was du hast ist keine Datenbank, sondern eine Tabelle in einer Datenbank.
SQL ist die Sprache um Tabellen abzufragen. Das Resultat ist immer eine Tabelle/Menge.
Datenbanken kennen keine Listen nur Tabellen.
Das Resultat das du haben willst, musst du also auch in Tabellenform definieren. Und dabei muss der Datentyp pro Spalte immer der gleiche bleiben. Man kann nicht in einer Spalte Zahlen, Texte und Datumswerte ausgeben.

Da limit und download Zahlen sind, kann SQL auch damit Rechnen:
SQL:
SELECT
user,
limit-download AS verbrauch,
lastchange
FROM
deine_tabelle
ORDER BY 
user, 
lastchange
 
Zuletzt bearbeitet von einem Moderator:

Neue Beiträge

Zurück