Zusammenfassung: In diesem Tutorial erfahren Sie, wie Sie mit der Anweisung SQL Server DELETE
eine oder mehrere Zeilen aus einer Tabelle entfernen.
Einführung in die SQL Server DELETE-Anweisung
Um eine oder mehrere Zeilen vollständig aus einer Tabelle zu entfernen, verwenden Sie die Anweisung DELETE
. Das Folgende veranschaulicht die Syntax:
Code language: SQL (Structured Query Language) (sql)
Zunächst geben Sie in der Klausel FROM
den Namen der Tabelle an, aus der die Zeilen gelöscht werden sollen.,
Die folgende Anweisung löscht beispielsweise alle Zeilen aus dertarget_table
:
Code language: SQL (Structured Query Language) (sql)
Um die Anzahl oder den Prozentsatz zufälliger Zeilen anzugeben, die gelöscht werden, verwenden Sie die KlauselTOP
.
Die folgendeDELETE
– Anweisung entfernt beispielsweise 10 zufällige Zeilen aus dertarget_table
:
Code language: SQL (Structured Query Language) (sql)
Da die Tabelle ihre Zeilen in nicht spezifizierter Reihenfolge speichert, wissen wir nicht, welche Zeilen gelöscht werden, aber wir wissen mit Sicherheit, dass die Anzahl der Zeilen 10 ist.,
In ähnlicher Weise können Sie die 10 Prozent zufälliger Zeilen löschen, indem Sie die folgende DELETE
Anweisung verwenden:
Code language: SQL (Structured Query Language) (sql)
Drittens entfernen Sie praktisch selten alle Zeilen aus einer Tabelle, sondern nur eine oder mehrere Zeilen. In diesem Fall müssen Sie die search_condition
in der WHERE
– Klausel angeben, um die Anzahl der gelöschten Zeilen zu begrenzen.
Die Zeilen, die dazu führen, dass search_condition
als true ausgewertet wird, werden gelöscht.
DieWHERE
Klausel ist optional., Wenn Sie es überspringen, entfernt die DELETE
Anweisung alle Zeilen aus der Tabelle.
SQL Server DELETE Anweisung Beispiele
Lassen Sie uns eine neue Tabelle für die Demonstration erstellen.
Die folgende Anweisung erstellt eine Tabelle mit dem Namen production.product_history
mit den aus der production.products
Tabelle kopierten Daten:
Code language: SQL (Structured Query Language) (sql)
Die folgende Abfrage gibt alle Zeilen aus der product_history
Tabelle zurück:
Code language: SQL (Structured Query Language) (sql)
Wie in der Ausgabe deutlich zu sehen ist, haben wir insgesamt 321 Zeilen.,
1) Löschen Sie die Anzahl der zufälligen Zeilen Beispiel
Die folgende DELETE
Anweisung entfernt 21 zufällige Zeilen aus der product_history
Tabelle:
Code language: SQL (Structured Query Language) (sql)
Hier ist die Nachricht, die vom SQL Server ausgegeben wird:
Code language: SQL (Structured Query Language) (sql)
bedeutet, dass 21 Zeilen gelöscht wurden.,
2) Löschen Sie den Prozentsatz zufälliger Zeilen Beispiel
Die folgendeDELETE
– Anweisung entfernt 5 Prozent zufälliger Zeilen aus derproduct_history
– Tabelle:
Code language: SQL (Structured Query Language) (sql)
SQL Server hat die folgende Meldung ausgegeben, dass 15 Zeilen (300 x 5% = 15) gelöscht wurden.,h3>3) Löschen Sie einige Zeilen mit einer Bedingung Beispiel
Die folgende DELETE
– Anweisung entfernt alle Produkte, deren Modelljahr 2017 ist:
Code language: SQL (Structured Query Language) (sql)
Hier ist die Ausgabemeldung:
Code language: SQL (Structured Query Language) (sql)
4) Löschen Sie alle Zeilen aus einer Tabelle Beispiel
Die folgende DELETE
Anweisung entfernt alle Zeilen aus der product_history
Tabelle:
Code language: SQL (Structured Query Language) (sql)
Wenn Sie alle Zeilen aus einer großen Tabelle entfernen möchten, sollten Sie die TRUNCATE TABLE
Anweisung verwenden, die schneller und effizienter ist.,
In diesem Tutorial haben Sie gelernt, wie Sie mit der Anweisung SQL Server DELETE
eine oder mehrere Zeilen aus einer Tabelle entfernen.