WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik



Im Homepage und Webhosting-Forum --- mysql: Rang herrausfinden

Scripte und Programme für PHP, MYSQL. Diskussionen zur Programmierung im Web. Fragen zu CMS, Blogsoftware, Shops, Newsletter und vielen weiteren Scripten.

Forum » PHP & MySQL » mysql: Rang herrausfinden - 29 März 2024 Antworten
im Forum für Webhosting Homepage gefunden:
mysql: Rang herrausfinden
Tobi W.
Mausakrobat
Threadstarter




Beiträge: 182

Hallo,

gibt es eine Möglichkeit mit SQL den Rang herrauszufinden.
Beispielsweise hat man bei einer Liga eine Sortierung nach
1. Punkte
2. Torverhältnis (kann auch wenn nicht anders möglich fest in der Tabelle stehen)

Gibt es jetzt eine einfache Möglichkeit den Rang einer bestimmten Mannschaft herrauszufinden, ohne das man gleich die ganze Tabelle durchgeht und zählt. Das wäre bei vielen Einträgen ein bisschen doof.

Danke,
Gruß
Tobi

---
tobi.weinhorst

  Profil   Website   Editieren   Zitieren
dee123
Otto-Normal-Poster




Beiträge: 63

Hi,
wenn du den Rang bzw. die Punkte von Hand einträgst:
1:
"select (*) FROM tabelle ORDER BY Punkte ASC (oder DESC)"

ASC oder DESC = aufsteigender oder absteigender Reihenfolge

---
Meine alte Signatur gefiel mir nicht mehr. Darum hab ich jetzt eine neue.

Diese Nachricht wurde geändert von: dee123
  Profil   Website   Editieren   Zitieren
Tobi W.
Mausakrobat
Threadstarter




Beiträge: 182

Der Rang wird nicht in der Tabelle gespeichert, sonder soll ausgegeben werden.
Deine Idee bringt mich da leider nicht weiter, aber danke.

---
tobi.weinhorst

  Profil   Website   Editieren   Zitieren
chip
Foren-Team




Beiträge: 419

Lass die Datensätze wie angegeben sortieren und füge deiner Schleife zum Auslesen eine Zählvariable zu, die bei jedem Durchlauf um 1 erhöht wird und gib sie per echo() aus.

Wenn ich dich richtig verstanden habe, willst du nur eine einfache Nummer ausgeben, die jeweils um 1 erhöht wird. Ansonsten poste nochmal, was du GENAU meinst.

---

  Profil   Website   Editieren   Zitieren
languitar
Foren-Team




Beiträge: 2795

Ich glaube er sucht ne direkte Möglichkeit das mit MySQL berechnen zu lassen, aber ne wirkliche Idee hab ich gerade auch nicht.

  Profil   Editieren   Zitieren
Tobi W.
Mausakrobat
Threadstarter




Beiträge: 182

languitar hat Recht. Ich möchte es einfach direkt haben. Ähnlich wie mit COUNT - da läßt ja auch niemand die durchrattern und zählt mit.

Wenn ich erst tausende von Datensätzen (wenn auch nicht die komplette Zeile) durchrattern muss um den Rang zu bestimmen, dann zieht das ganz schön am Server. Vor allem, weil es ja jedesmal gemacht werden muss.

Ist ja schon ein bisschen doof.

---
tobi.weinhorst

Diese Nachricht wurde geändert von: Tobi W.
  Profil   Website   Editieren   Zitieren
chip
Foren-Team




Beiträge: 419

Naja, wenn du die Datensätze sowieso in einen Array einliest, kannst du ja einfach den Array-Key ausgeben, wenn er numerisch ist (+1 natürlich).

---

  Profil   Website   Editieren   Zitieren
languitar
Foren-Team




Beiträge: 2795

Das ist aber unnützer Datenmüll.

  Profil   Editieren   Zitieren
chip
Foren-Team




Beiträge: 419

languitar schrieb am 12.05.2006 19:57
Das ist aber unnützer Datenmüll.


Wieso? Er will die Daten ja früher oder später sowieso ausgeben. Das einzige Problem ist, wenn er aus der Mitte irgendwelche Datensätze rausholen will, denn dann würde ja der Index wieder bei 0 beginnen.

---

  Profil   Website   Editieren   Zitieren
Tobi W.
Mausakrobat
Threadstarter




Beiträge: 182

Es ist Datenmüll. Ich würde unmengen an Daten rumladen für eine solch simples ergebnis.

Wenn es nur eine Bedingung wäre, dann wäre es ja kein Problem.

"Select COUNT(*) tbl WHERE Punkte > $punkte_spieler"

Da es aber bei Punktgleichheit auf das Torverhältnis ankommt klappt es nicht, oder besser gesagt ich weiss nicht wie.

---
tobi.weinhorst

  Profil   Website   Editieren   Zitieren
flipflop
Otto-Normal-Poster




Beiträge: 62

das geht doch dann relativ einfach
zähle die Anzahl der Ergebnisse für die Abfrage
1: 
2: 
3:
"Select COUNT(*) tbl WHERE Punkte > $punkte_spieler"

mit mysqlnumrows (?) schau nochmal nach der richtigen schreibweise
Wenn das Ergebnis >= 2 ist
dann { brechne Torverhältnis oder steht das in der Datenbank und echo die Reihe wo am besten ist }

oder soll es reines SQl sein?



---
http://alles-ausser-banane.de/

  Profil   Website   Editieren   Zitieren
Tobi W.
Mausakrobat
Threadstarter




Beiträge: 182

Gute Idee flipflop,

aber ich bin noch auf eine bessere Gekommen. Mit nur einen SQL

Guckste hier:
1:
"Select COUNT(*) tbl WHERE (Punkte > $punkte_spieler) OR (Punkte = $punkte_spieler AND Torverhaeltnis > $torverhaeltnis_spieler)"


Das gute ist, dass man es so recht weit erweitern kann.
Das ich da nicht schon früher drauf gekommen bin....

(Herraus kommt die Anzahl der Spieler, die vor dem Spieler X sind - also evtl. noch +1 rechnen um auf den Platz zu kommen.)

---
tobi.weinhorst

Diese Nachricht wurde geändert von: Tobi W.
  Profil   Website   Editieren   Zitieren
chip
Foren-Team




Beiträge: 419

Tobi W. schrieb am 16.05.2006 09:51
Gute Idee flipflop,

aber ich bin noch auf eine bessere Gekommen. Mit nur einen SQL

Guckste hier:
1:
"Select COUNT(*) tbl WHERE (Punkte > $punkte_spieler) OR (Punkte = $punkte_spieler AND Torverhaeltnis > $torverhaeltnis_spieler)"


Das gute ist, dass man es so recht weit erweitern kann.
Das ich da nicht schon früher drauf gekommen bin....

(Herraus kommt die Anzahl der Spieler, die vor dem Spieler X sind - also evtl. noch +1 rechnen um auf den Platz zu kommen.)


Achso, ich dachte, Du willst es unbedingt ohne, dass das Torverhältnis in der Tabelle steht haben.
Na dannnnn, ist es ja gaaanz einfach .


---

  Profil   Website   Editieren   Zitieren
Tobi W.
Mausakrobat
Threadstarter




Beiträge: 182

Hab ich aber gleich im ersten Posting geschrieben.

Jetzt sagen, dass es ganz einfach ist hätteste dann ja schon vorher den Ansatz bringen können

---
tobi.weinhorst

Diese Nachricht wurde geändert von: Tobi W.
  Profil   Website   Editieren   Zitieren
chip
Foren-Team




Beiträge: 419

Klar. War auch nur als Scherz gemeint. Ehrlich gesagt, hatte ich schon von Anfang an nicht genau gewusst, was Du meinst/willst. Aber jetzt hast Du die Lösung ja gefunden.

---

Diese Nachricht wurde geändert von: chip
  Profil   Website   Editieren   Zitieren
 

Antworten
Forum » PHP & MySQL » mysql: Rang herrausfinden

Aktuelle Beiträge zur Hilfe im Forum für Homepage - mysql: Rang herrausfinden im Forum Homepage Hosting AntwortenLetztes Posting
Best online slots
in "PHP & MySQL"
0 23.01.2023 22:40 von Sevetr
Rangliste (Ohne Mysql) (Kompliziertes Ordner System)
in "PHP & MySQL"
3 19.07.2021 06:00 von newtopblog
kleines problem mit phpadmin
in "PHP & MySQL"
5 11.04.2021 22:22 von Zavylon
Counter mit PHP
in "PHP & MySQL"
4 22.03.2021 16:29 von Robeni
Fehlermeldung beim Importieren der Datenbank in phpmyadmin
in "PHP & MySQL"
0 02.08.2019 22:14 von iFuchs
CMS für Online Shop
in "PHP & MySQL"
18 26.05.2019 13:29 von raiserle
Regestrierungproblem
in "PHP & MySQL"
3 28.11.2018 13:20 von norbertofahey
PHP Datum ausgeben?
in "PHP & MySQL"
1 19.10.2018 10:04 von Klaus1973
PHP befehl ausführen
in "PHP & MySQL"
11 16.08.2018 09:08 von Klaus1973
Visual Composer selber programmieren?
in "PHP & MySQL"
0 22.01.2017 23:45 von Redji
php preg_replace_callback für dynamischen Link
in "PHP & MySQL"
0 05.07.2016 11:02 von Rm21
PHP Code verschlüsseln
in "PHP & MySQL"
20 21.02.2016 21:25 von Kilian1
migrierter WP-Blog läuft nicht ...
in "PHP & MySQL"
0 04.02.2016 02:01 von Oxygon



Besucher : 7975183    Heute : 134     Gestern : 388     Online : 35     29.3.2024    10:00      0 Besucher in den letzten 60 Sekunden        
Nach oben