Select-Abfrage zu einer Delete-Befehl umstellen

Tetra1081

Neuer Benutzer
Beiträge
3
Hallo zusammen,

ich möchte folgende Select-Abfrage zu einen Delete-Befehl umstellen:

SELECT * FROM
(SELECT *, ROW_NUMBER() OVER(ORDER BY DatumZeit) AS Zeile FROM test) AS t
WHERE Zeile % 2 = 0

Die Ausgabe wäre in diesem Fall jeder 2. Datensatz, den ich zu
löschen wünsche.

Hoffe auf Eure Hilfe.

Viele Grüße
Florian
 
Zuletzt bearbeitet:
Werbung:
Das müsste in etwa so gehen:

Code:
DELETE FROM    test WHERE pk IN (

SELECT pk FROM
(SELECT pk, ROW_NUMBER() OVER(ORDER BY DatumZeit) AS Zeile FROM test) AS t
WHERE Zeile % 2 = 0

)
 
Ich erhalte da folgenden Fehler:

Msg 207, Level 16, State 1, Line 1
Invalid column name 'pk'.
Msg 207, Level 16, State 1, Line 4
Invalid column name 'pk'.
 
pk steht hier für Primary Key und soll die Spalte sein, die deinen Primary Key beinhaltet. Das musst du natürlich austauschen.
 
Werbung:
Zurück
Oben