logo

Stavek MySQL DELETE

Stavek MySQL DELETE se uporablja za odstranjevanje zapisov iz tabele MySQL, ki niso več potrebni v bazi podatkov. Ta poizvedba v MySQL izbriše celotno vrstico iz tabele in ustvari število izbrisanih vrstic . Omogoča nam tudi brisanje več kot enega zapisa iz tabele znotraj ene poizvedbe, kar je koristno pri odstranjevanju velikega števila zapisov iz tabele. Z uporabo stavka za brisanje lahko tudi odstranimo podatke glede na pogoje.

Ko s to poizvedbo izbrišemo zapise, jih ne moremo obnoviti . Zato priporočamo, da pred brisanjem zapisov iz tabele ustvarite varnostno kopijo svoje baze podatkov . Varnostne kopije baz podatkov nam omogočajo, da obnovimo podatke, kadar koli jih bomo potrebovali v prihodnosti.

aja java

Sintaksa:

Spodaj je sintaksa, ki ponazarja, kako uporabiti stavek DELETE:

 DELETE FROM table_name WHERE condition; 

V zgornjem stavku moramo najprej določiti ime tabele, iz katere želimo izbrisati podatke. Drugič, določiti moramo pogoj za brisanje zapisov v klavzuli WHERE, ki ni obvezna. Če v stavku izpustimo stavek WHERE, bo ta poizvedba odstranila celotne zapise iz tabele baze podatkov.

Če želimo izbrisati zapise iz več tabel z eno samo poizvedbo DELETE, moramo dodati PRIDRUŽI SE klavzula s stavkom DELETE.

Če želimo izbrisati vse zapise iz tabele, ne da bi vedeli število izbrisanih vrstic, moramo uporabiti OKRNJENA TABELA izjava, ki zagotavlja boljšo učinkovitost.

Razumejmo, kako deluje izjava DELETE v MySQL skozi različne primere.

Primeri stavkov MySQL DELETE

Tukaj bomo uporabili 'Zaposleni' in 'Plačilo' tabele za predstavitev stavka DELETE. Recimo, da tabeli Zaposleni in Plačila vsebujejo naslednje podatke:

mysql brisanje poizvedbe
mysql brisanje poizvedbe

Če želimo izbrisati zaposlenega, katerega emp_id je 107 , bi morali uporabiti stavek DELETE s klavzulo WHERE. Oglejte si spodnjo poizvedbo:

 mysql> DELETE FROM Employees WHERE emp_id=107; 

Po izvedbi poizvedbe bo vrnil rezultat kot spodnjo sliko. Ko je zapis izbrisan, preverite tabelo s stavkom SELECT:

java pgm
mysql brisanje poizvedbe

Če želimo izbrisati vse zapise iz tabele, ni treba uporabiti stavka WHERE s stavkom DELETE. Oglejte si spodnjo kodo in izhod:

mysql brisanje poizvedbe

V zgornjem izhodu lahko vidimo, da bo po odstranitvi vseh vrstic tabela Employees prazna. To pomeni, da v izbrani tabeli ni na voljo nobenih zapisov.

Klavzula MySQL DELETE in LIMIT

Klavzula MySQL Limit se uporablja za omejevanje števila vrstic, vrnjenih iz nabora rezultatov, namesto za pridobivanje celotnih zapisov v tabeli. Včasih želimo omejiti število vrstic, ki jih želimo izbrisati iz tabele; v tem primeru bomo uporabili OMEJITEV člen, kot sledi:

 DELETE FROM table_name WHERE condition ORDER BY colm1, colm2, ... LIMIT row_count; 

Upoštevati je treba, da vrstni red vrstic v tabeli MySQL ni določen. Zato moramo vedno uporabljati NAROČI PO pri uporabi klavzule LIMIT.

Na primer , naslednja poizvedba najprej razvrsti zaposlene glede na njihova imena po abecedi in izbriše prve tri zaposlene iz tabele:

 mysql> DELETE FROM Employees ORDER BY name LIMIT 3; 

Dala bo spodnji rezultat:

mysql brisanje poizvedbe

Klavzula MySQL DELETE in JOIN

Klavzula JOIN se uporablja za dodajanje dveh ali več tabel v MySQL. Klavzulo JOIN bomo dodali s stavkom DELETE, kadarkoli želimo izbrisati zapise iz več tabel znotraj ene same poizvedbe. Oglejte si spodnjo poizvedbo:

 mysql> DELETE Employees, Payment FROM Employees INNER JOIN Payment ON Employees.emp_id = Payment.emp_id WHERE Employees.emp_id = 102; 

Izhod:

Po izvedbi bomo videli rezultat kot na spodnji sliki:

mysql brisanje poizvedbe

Če želite prebrati več informacij o stavku DELETE s klavzulo JOIN, Klikni tukaj .