dax4fun
Goto Top

Doppelten Datensatz suchen und Wert erhöhen

Moin,
es gingen mir schon alle Suchbegriffe beim googlen aus um eine SQL Abfrage zu basteln die folgendes tun soll.

wenn ein Wert in einer Spalte doppelt ist soll der um Bsp. 2000 erhöht werden.

db spiele

ist:
spieler..... spiel
1................123
2................123

soll:
spieler..... spiel
1................123
2................2123

Content-Key: 239723

Url: https://administrator.de/contentid/239723

Printed on: April 25, 2024 at 12:04 o'clock

Member: Gersen
Solution Gersen Jun 02, 2014, updated at Oct 02, 2014 at 18:39:44 (UTC)
Goto Top
Hallo,

unter den Voraussetzungen, dass a) die Spalte "spieler" der eindeutige Primärschlüssel ist und b) der höhere "spieler"-Eintrag erhöht werden soll, wäre das wohl (für "tabellenname" den Namen der DB-Tabelle eintragen):

update tabellenname set spiel=spiel+2000 where spieler = (select t2.spieler from tabellenname t1, tabellenname t2 where t1.spiel = t2.spiel and t2.spieler > t1.spieler)

Ist "spieler" nicht eindeutig (unique), dann müsstest Du -glaube ich- über die "rowid" gehen - in der Anweisung überall "spieler" durch "rowid" ersetzen.

Anweisung ungetestet.

Gruß,
Gersen