SQL: SLETT erklæringen 
 
 Denne SQL opplæringen forklarer hvordan du bruker SQL DELETE-setningen med syntaks, eksempler og øvingsoppgaver 
 
 Beskrivelse 
. 
 SQL DELETE-setningen er en brukes til å slette en eller flere poster fra en tabell 
 
 Syntax 
 
 Syntaksen for SQL DELETE-setningen er:. 
 DELETE FROM tableWHERE vilkår; 
 Parametere eller argumenter 
 
-  table 
 
-  Tabellen som du ønsker å slette poster fra. 
 
-  forholdene 
 
-  De vilkår som må være møttes til postene som skal slettes 
 Merk: Du trenger ikke å liste felt i SQL DELETE-setningen, siden du sletter hele raden fra bordet 
 
 Eksempel -.. Med En forutsetning
 La oss se på et eksempel som viser hvordan du bruker SQL DELETE-setningen 
 For eksempel:. 
 DELETE FROM suppliersWHERE supplier_name = 'IBM';Dette SQL DELETE eksempel ville slette alle poster fra leverandører bordet der supplier_name er IBM. 
 Det kan hende du ønsker å sjekke for antall rader som vil bli slettet. Du kan bestemme antall rader som vil bli slettet ved å kjøre følgende SQL SELECT-setningen før du utfører slette 
 SELECT count (*) FROM suppliersWHERE supplier_name = 'IBM.';
 eksempel - med to forhold
 La oss se på en SQL DELETE eksempel, der vi bare har to forhold i SQL DELETE-setningen 
 For eksempel: 
 DELETE FROM productsWHERE enheter. > = 12 Og category = 'Klær';Dette SQL DELETE eksempel ville slette alle poster fra produkter bord der enheter 
 er større enn eller lik 12 og kategorien
 er klær.
 Du kan ønske å sjekke for antall rader som vil bli slettet. Du kan bestemme antall rader som vil bli slettet ved å kjøre følgende SQL SELECT-setningen før du utfører slette 
 SELECT count (*) FROM productsWHERE enheter >. = 12 Og category = 'Klær';
 Eksempel - Bruke SQL EXISTS Clause
 Du kan også utføre mer kompliserte sletter 
 Det kan være lurt å slette poster i en tabell basert på verdiene i en annen tabell.. Siden du ikke kan inneholde mer enn én tabell i SQL FROM-leddet når du utfører en slette, kan du bruke SQL EXISTS klausul 
 For eksempel:. 
 DELETE FROM suppliersWHERE EXISTS (SELECT kunder. CUSTOMER_NAME fra kunder hvor customers.customer_id = suppliers.supplier_id OG customers.customer_name = 'IBM');Dette SQL DELETE eksempel ville slette alle postene i leverandører bord hvor det er en rekord i kunder tabellen hvis navn er IBM, og CUSTOMER_ID er den samme som supplier_id. 
 Hvis du ønsker å finne ut antall rader som skal slettes, kan du kjøre følgende SQL SELECT-setningen før du utfører slettingen. 
 Velg COUNT (*) FROM suppliersWHERE finnes (SELECT customers.customer_name fra kunder hvor customers.customer_id = suppliers.supplier_id og kunder .customer_name = 'IBM');
 Ofte stilte spørsmål
 Spørsmål: Hvordan skulle jeg skrive en SQL DELETE-setningen til å slette alle rekorder i tablea hvis data i field1 & field2 IKKE matche dataene i fieldx & fieldz av TableB 
 Svar: Du kan prøve noe sånt som dette for din SQL DELETE-setningen: 
 DELETE FROM TableAWHERE IKKE eksisterer (SELECT * FROM TableB WHERE TableA.field1 = TableB.fieldx OG TableA.field2 = TableB.fieldz); Øvelse Øvelse # 1:
 Basert på Medarbeidere 
 tabellen, slette alle ansattes registreringer hvis lønn er større enn $ 40,000:
 CREATE TABLE ansatte (employee_number nummer (10) ikke null, employee_name varchar2 (50) ikke null, lønn nummer (6), CONSTRAINT employees_pk PRIMARY KEY (employee_number));
 Løsning for Practice Øvelse # 1:
 Følgende SQL DELETE-setningen ville slette disse postene fra Medarbeidere 
 tabell:
 DELETE FROM employeesWHERE lønn > 40000; Øvelse Øvelse # 2:
 Basert på leverandører 
 tabellen, slette leverandør registrering hvis supplier_id
 er 5001 og supplier_name
 er Apple:
 CREATE TABLE leverandører (supplier_id nummer (10) ikke null, supplier_name varchar2 (50) ikke null, by varchar2 (50), CONSTRAINT suppliers_pk PRIMARY KEY (supplier_id));
 Løsning for Practice Øvelse # 2:
 Følgende SQL DELETE-setningen vil slette denne posten fra leverandører 
 tabell:
 DELETE FROM suppliersWHERE supplier_id = 5001AND supplier_name = 'Apple'; Praksis Exercise # 3:
 Basert på kundene Hotell og old_customers 
 tabellen, slette fra kunder
 bordet alle poster som finnes i old_customers
 tabellen (matcher CUSTOMER_ID
 feltet fra kunder
 bordet til old_customer_id
 feltet i old_customers
 tabell).
 CREATE TABLE kunder (CUSTOMER_ID nummer (10) ikke null, CUSTOMER_NAME varchar2 (50) ikke null, by varchar2 (50), CONSTRAINT customers_pk PRIMARY KEY (CUSTOMER_ID)); CREATE TABLE old_customers (old_customer_id nummer (10) ikke null, old_customer_name varchar2 (50) ikke null, old_city varchar2 (50), status varchar2 (20), CONSTRAINT old_customers_pk PRIMARY KEY (old_customer_id));
 Løsning for Practice Exercise # 3:
 Følgende SQL DELETE-setningen ville være løsningen (ved hjelp av SQL EXISTS klausul) som ville slette postene fra kunder 
 tabellen:
 DELETE FROM customersWHERE foreligger (VELG old_customers.old_customer_id Fra old_customers WHERE old_customers.old_customer_id = customers.customer_id); Anmeldelser
 Previous:SQL: Data TypesNext Page:SQL Tutorial

