Seite 1 von 1

mySQL-Abfrage

Verfasst: 03.11.2007 14:57
von SKYSURFER2002
Hallo,

ich bin gerade an einer mySQL-Abfrage dran, und ich will wissen, ob es für mein Problem eine Lösung gibt.

Hier mal die Datenbankbeschreibung:
id | uid | titel | sortierung
1 1 123 1
2 1 456 2
3 1 789 3
nun kann der Benutzer seine Einträge so sortieren, wie es ihm gefällt.

Wenn ich nun den Eintrag mit der id 2 löschen möchte, dann muss ich die Spalte sortierung updaten. Die Einträge mit der uid = 1 und sortierung > 2 müssen zu sortierung = sortierung - 1.
Daraus ergibt sich folgende mySQL-Abfrage:

Code: Alles auswählen

UPDATE page_users_kat SET sortierung = sortierung - 1 WHERE uid = '$userid' AND sortierung > ???
Wie muss die Abfrage denn richtig sein?

Eine möglichkeit wäre es, den Wert sortierung schon vorher auszulesen. Aber dann habe ich eine weitere Abfrage mehr. Ist es nun sinnvoller das in einer Abfrage zu machen oder in 2??? Performance???


SKYSURFER

Verfasst: 03.11.2007 15:01
von Pyramide
Naja du musst ja die Daten des zu löschenden Eintrags sowieso vorher auslesen, schon um zu prüfen, ob der Eintrag überhaupt existiert, der gelöscht werden soll.

Verfasst: 03.11.2007 15:17
von SKYSURFER2002
Ok, das ist ein Argument.

SKYSURFER

Verfasst: 06.11.2007 22:30
von gn#36
Folgebeitrag nach http://www.phpbb.de/viewtopic.php?t=158392 abgetrennt, da dieser das Thema verfehlt.