Antwort
 
LinkBack Themen-Optionen Thema durchsuchen
Alt 20.02.2009, 14:31 Nach oben    #1
Neuer Benutzer
 
Registriert seit: 02.02.2009
Beiträge: 14
Standard MySQL: Nur niedrigsten Wert

Hallo,
ich bin gerade dabei ein kleines Auswertungsprogramm zu schreiben. Das ganze läuft natürlich MySQL gestützt. Zuerst wird in die Tabelle „teilnehmer“ die Startnummer, der Vorname und der Nachname eingetragen. Die Ergebnisse werden in der Tabelle „ergebnis“ eingetragen. Der Teilnehmer wird über die Startnummer identifiziert. Also wird in die Tabelle „ergebnis“ Startnummer und die Punktzahl eingetragen.

Jetzt kann es aber vor kommen, dass ein Teilnehmer öfter an den Start geht und dann selbstverständlich mehrere Ergebnisse in der Tabelle stehen. Wie schaffe ich es mit SQL, dass nur der niedrigste (also das beste Ergebnis) ausgelesen wird?

Hier mal der SELECT mit einem JOIN für beide Tabellen.
Code:
SELECT a.startnr, a.vname, a.nname, a.disziplin, a.verein, b.ringe, b.teiler, b.dsb
FROM teilnehmer a JOIN ergebnis b ON a.startnr = b.startnr
ORDER BY b.startnr asc"
myflasher ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.02.2009, 16:22 Nach oben    #2
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 3.198
Standard

Soll nur das Beste überhaupt ausgelesen werden, oder eine Liste mit den persönlichen Bestzeiten?


Stichwörter für die Suche könnten sein:
- DISTINCT
- LIMIT
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.02.2009, 01:45 Nach oben    #3
Neuer Benutzer
 
Registriert seit: 02.02.2009
Beiträge: 14
Standard

Hallo,
ich hab das jetzt wie folgt gelöst:
Code:
SELECT a.startnr, a.vname, a.nname, a.disziplin, a.verein, min(b.dsb)														FROM teilnehmer a JOIN ergebnis b ON a.startnr = b.startnr															WHERE verein = '". $verein ."'															GROUP BY b.startnr															ORDER BY min(b.dsb) as
Wichtig dabei ist auch, dass bei ORDER BY min(b.dsb) gewählt wird. Wenn man nämlich nur b.dsb macht wird nicht richtig sortiert. Mit DISTINCT hätte es auch klappen können.

Trotzdem Danke für deine Antwort!
myflasher ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Wieviel ist mysql wert? Jann Hendrik Nachrichten 8 19.01.2008 02:25
Schlüssel in verschachteltem Array suchen und Wert zurückgeben Ben PHP-Programmierung 8 19.10.2006 18:54
ssh tunnel zu einer mysql datenbank beny_mcde Datenbanken 4 07.06.2006 16:05
MySQL 5.1 kommt in die Beta-Phase Ben Nachrichten 1 02.03.2006 14:31
Modifier haben einen Wert, obwohl keine gedrückt sind materthron Desktop-Applikationen und Grafik 3 06.11.2005 16:28


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:13 Uhr.


Powered by vBulletin® Version 3.8.4 (Deutsch)
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47