Oppsummering: i denne opplæringen vil du lære hvordan du bruker SQL Server DELETE
statement til å fjerne en eller flere rader fra en tabell.
Introduksjon til SQL Server-SLETTE uttalelse
for Å fjerne en eller flere rader fra en tabell helt, kan du bruke DELETE
uttalelse. Følgende illustrerer sin syntaks:
Code language: SQL (Structured Query Language) (sql)
Først, angir du navnet på tabellen som rader som skal slettes i FROM
klausulen.,
For eksempel, følgende uttalelse vil slette alle rader fra target_table
:
Code language: SQL (Structured Query Language) (sql)
Andre, for å angi antall eller prosent av tilfeldige rader som skal slettes, kan du bruke TOP
klausulen.
For eksempel, følgende. DELETE
uttalelse fjerner 10 tilfeldig rader fra target_table
:
Code language: SQL (Structured Query Language) (sql)
Fordi tabellen lagrer rader i uspesifisert bestilling, vi vet ikke hvilke rader som skal slettes, men vi vet at antallet rader som skal slettes er 10.,
på samme måte, kan du slette 10 prosent av tilfeldige rad ved hjelp av følgende DELETE
uttalelse:
Code language: SQL (Structured Query Language) (sql)
Tredje, praktisk talt, vil du sjelden fjerne alle rader fra en tabell, men bare én eller flere rader. I dette tilfellet, du trenger for å angi search_condition
i WHERE
klausulen skal begrense antallet rader som er slettet.
radene som forårsaker search_condition
evaluerer til true vil bli slettet.
WHERE
klausulen er valgfritt., Hvis du hopper over det, DELETE
uttalelse vil fjerne alle rader fra bordet.
SQL Server-SLETTE uttalelse eksempler
La oss opprette en ny tabell for demonstrasjon.
følgende uttalelse lager en tabell som heter production.product_history
med data kopieres fra production.products
tabell:
Code language: SQL (Structured Query Language) (sql)
følgende spørring returnerer alle radene fra product_history
tabell:
Code language: SQL (Structured Query Language) (sql)
Som kan sees tydelig i produksjonen, har vi 321 rader totalt.,
1) Slette nummeret av tilfeldig rader eksempel
følgende DELETE
uttalelse fjerner 21 tilfeldig rader fra product_history
tabell:
Code language: SQL (Structured Query Language) (sql)
Her er meldingen utstedt av SQL Server:
Code language: SQL (Structured Query Language) (sql)
Det betyr at 21 rader har blitt slettet.,
2) Slett prosent av tilfeldige rader eksempel
følgende DELETE
uttalelse fjerner 5 prosent av tilfeldige rader fra product_history
tabell:
Code language: SQL (Structured Query Language) (sql)
SQL Server gitt følgende melding som indikerer at 15 rader (300 x 5% = 15) har blitt slettet.,h3>3) Slett noen rader med en tilstand som eksempel
følgende DELETE
uttalelse fjerner alle produkter som modell er i år 2017:
Code language: SQL (Structured Query Language) (sql)
Her er resultatet melding:
Code language: SQL (Structured Query Language) (sql)
4) Slette alle rader fra en tabell som eksempel
følgende DELETE
uttalelse fjerner alle rader fra product_history
tabell:
Code language: SQL (Structured Query Language) (sql)
Merk at hvis du ønsker å fjerne alle rader fra et stort bord, du bør bruke TRUNCATE TABLE
uttalelse som er raskere og mer effektiv.,
I denne opplæringen, har du lært hvordan du bruker SQL Server DELETE
statement til å fjerne en eller flere rader fra en tabell.