MySQL Forums
Forum List  »  German

Abfrage und Änderung von Daten über 2 Tabellen in einer Abfrage möglich?
Posted by: Robert Meyer
Date: December 05, 2016 01:33PM

Folgende Daten sind vorhanden:

mysql> select * from PlatzGr1;
+----+------------------------+-----+------+------+-------+-------+
| id | spieler | win | lost | legs | avg | platz |
+----+------------------------+-----+------+------+-------+-------+
| 1 | HE1804: Mike Weidelt | 4 | 0 | 8:0 | 44.00 | 1 |
| 2 | HE973: Renate Lauer | 2 | 2 | 4:4 | 44.00 | 2 |
| 3 | HE471: Frank Schneider | 2 | 2 | 4:4 | 44.00 | 3 |
| 4 | HE1627: Holger Boller | 1 | 3 | 2:6 | 44.00 | 4 |
| 5 | HE1726: Thomas Dombach | 1 | 3 | 2:6 | 44.00 | 5 |
+----+------------------------+-----+------+------+-------+-------+
5 rows in set (0,00 sec)

mysql> select * from Paarungen1;
+----+------------------------+------------------------+--------+--------+--------+--------+
| id | spieler1 | spieler2 | sperg1 | sperg2 | sp1avg | sp2avg |
+----+------------------------+------------------------+--------+--------+--------+--------+
| 1 | HE1804: Mike Weidelt | HE973: Renate Lauer | 2 | 0 | 55.00 | 55.00 |
| 2 | HE1627: Holger Boller | HE1726: Thomas Dombach | 0 | 2 | 55.00 | 55.00 |
| 3 | HE973: Renate Lauer | HE1726: Thomas Dombach | 2 | 0 | 55.00 | 55.00 |
| 4 | HE471: Frank Schneider | HE1627: Holger Boller | 0 | 2 | 55.00 | 55.00 |
| 5 | HE1804: Mike Weidelt | HE1726: Thomas Dombach | 2 | 0 | 55.00 | 55.00 |
| 6 | HE973: Renate Lauer | HE471: Frank Schneider | 0 | 2 | 55.00 | 55.00 |
| 7 | HE1804: Mike Weidelt | HE1627: Holger Boller | 2 | 0 | 55.00 | 55.00 |
| 8 | HE1726: Thomas Dombach | HE471: Frank Schneider | 0 | 2 | 55.00 | 55.00 |
| 9 | HE1804: Mike Weidelt | HE471: Frank Schneider | 2 | 0 | 55.00 | 55.00 |
| 10 | HE1627: Holger Boller | HE973: Renate Lauer | 0 | 2 | 55.00 | 55.00 |
+----+------------------------+------------------------+--------+--------+--------+--------+
10 rows in set (0,00 sec)


Ich suche nach einer Lösung, wie ich herausfinde, welche Spieler in der Tabelle PlatzGr1 die gleichen Werte in der Spalte legs haben und dann über die Tabelle Paarungen1 die entsprechende Paarung finde um festzustellen, wer faktisch im direkten Vergleich gewonnen hat um dann in PlatzGr1 die Platzierung anzupassen ...

Kann mir da bitte jemand helfen, da ich Datenbank Anfänger bin und mir da wirklich schwer tue.

Auf folgendes bin ich schon gekommen (ok - habs im Netz gefunden) ...

mysql> select * from PlatzGr1 where legs in (select legs from PlatzGr1 group by legs having count(1) > 1);
+----+------------------------+-----+------+------+-------+-------+
| id | spieler | win | lost | legs | avg | platz |
+----+------------------------+-----+------+------+-------+-------+
| 2 | HE973: Renate Lauer | 2 | 2 | 4:4 | 44.00 | 2 |
| 3 | HE471: Frank Schneider | 2 | 2 | 4:4 | 44.00 | 3 |
| 4 | HE1627: Holger Boller | 1 | 3 | 2:6 | 44.00 | 4 |
| 5 | HE1726: Thomas Dombach | 1 | 3 | 2:6 | 44.00 | 5 |
+----+------------------------+-----+------+------+-------+-------+
4 rows in set (0,00 sec)

Jetzt möchte ich praktisch rausfinden, wer von den ersten Beiden gewonnen hat und wer von den zweiten Beiden ... entsprechend dann die Platzierung ändern wenn notwendig ...
In diesem Falle wäre es eben notwendig id 3 platz auf 2 zu setzen und id 5 platz auf 4 - im gegenzug natürlich dann id 2 platz auf 3 und id 4 platz auf 5 ...

Geht das überhaupt so wie ich mir das denke in einem Rutsch?

Lieben Dank an jeden der sich damit beschäftigt und mir versucht zu helfen
LG
Robert

Options: ReplyQuote


Subject
Views
Written By
Posted
Abfrage und Änderung von Daten über 2 Tabellen in einer Abfrage möglich?
1318
December 05, 2016 01:33PM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.