MySQL DELETE-sætning bruges til at fjerne poster fra MySQL-tabellen, som ikke længere er påkrævet i databasen. Denne forespørgsel i MySQL sletter en hel række fra tabellen og producerer antallet af slettede rækker . Det giver os også mulighed for at slette mere end én post fra tabellen inden for en enkelt forespørgsel, hvilket er fordelagtigt, mens du fjerner et stort antal poster fra en tabel. Ved at bruge sletteerklæringen kan vi også fjerne data baseret på betingelser.
Når vi har slettet posterne ved hjælp af denne forespørgsel, kan vi ikke gendanne den . Derfor anbefales det, før du sletter nogen poster fra tabellen lave en sikkerhedskopi af din database . Database-sikkerhedskopierne giver os mulighed for at gendanne dataene, når vi har brug for det i fremtiden.
Syntaks:
Følgende er syntaksen, der illustrerer, hvordan man bruger DELETE-sætningen:
java indeks
DELETE FROM table_name WHERE condition;
I ovenstående erklæring skal vi først angive det tabelnavn, som vi ønsker at slette data fra. For det andet skal vi specificere betingelsen for at slette poster i WHERE-sætningen, som er valgfri. Hvis vi udelader WHERE-sætningen i sætningen, vil denne forespørgsel fjerne hele poster fra databasetabellen.
Hvis vi ønsker at slette poster fra flere tabeller ved hjælp af en enkelt DELETE-forespørgsel, skal vi tilføje TILSLUTTE klausul med DELETE-erklæringen.
sove til javascript
Hvis vi ønsker at slette alle poster fra en tabel uden at kende antallet af slettede rækker, skal vi bruge TRUNCATE TABEL udsagn, der giver bedre ydeevne.
Lad os forstå, hvordan DELETE-sætningen fungerer i MySQL gennem forskellige eksempler.
Eksempler på MySQL DELETE-erklæringer
Her skal vi bruge 'Medarbejdere' og 'Betaling' tabeller til demonstration af DELETE-sætningen. Antag, at tabellerne Medarbejdere og Betalinger indeholder følgende data:
Hvis vi ønsker at slette en medarbejder, hvis emp_id er 107 , bør vi bruge DELETE-sætningen med WHERE-sætningen. Se nedenstående forespørgsel:
mysql> DELETE FROM Employees WHERE emp_id=107;
Efter udførelsen af forespørgslen vil den returnere output som nedenstående billede. Når posten er slettet, skal du kontrollere tabellen ved hjælp af SELECT-sætningen:
Sridevi
Hvis vi ønsker at slette alle poster fra tabellen, er der ingen grund til at bruge WHERE-sætningen med DELETE-sætningen. Se nedenstående kode og output:
I ovenstående output kan vi se, at efter fjernelse af alle rækker, vil tabellen Medarbejdere være tom. Det betyder, at ingen poster er tilgængelige i den valgte tabel.
MySQL DELETE og LIMIT klausul
MySQL Limit-klausul bruges til at begrænse antallet af rækker, der returnerer fra resultatsættet, i stedet for at hente hele posterne i tabellen. Nogle gange ønsker vi at begrænse antallet af rækker, der skal slettes fra tabellen; i så fald vil vi bruge BEGRÆNSE klausul som følger:
DELETE FROM table_name WHERE condition ORDER BY colm1, colm2, ... LIMIT row_count;
Det skal bemærkes, at rækkefølgen af rækker i en MySQL-tabel er uspecificeret. Derfor bør vi altid bruge BESTIL EFTER klausul, mens du bruger LIMIT-klausulen.
For eksempel , sorterer følgende forespørgsel først medarbejderne efter deres navne alfabetisk og sletter de første tre medarbejdere fra tabellen:
mysql> DELETE FROM Employees ORDER BY name LIMIT 3;
Det vil give nedenstående output:
MySQL SLET og JOIN-klausul
JOIN-klausulen bruges til at tilføje de to eller flere tabeller i MySQL. Vi tilføjer JOIN-sætningen med DELETE-sætningen, når vi ønsker at slette poster fra flere tabeller inden for en enkelt forespørgsel. Se nedenstående forespørgsel:
mysql> DELETE Employees, Payment FROM Employees INNER JOIN Payment ON Employees.emp_id = Payment.emp_id WHERE Employees.emp_id = 102;
Produktion:
Efter udførelse vil vi se output som nedenstående billede:
konvertering af int til streng i java
For at læse mere information om DELETE-erklæringen med JOIN-klausulen, Klik her .