Instrucțiunea MySQL DELETE este folosită pentru a elimina înregistrările din tabelul MySQL care nu mai sunt necesare în baza de date. Această interogare în MySQL șterge un rând întreg din tabel și produce numărul rândurilor șterse . De asemenea, ne permite să ștergem mai mult de o înregistrare din tabel într-o singură interogare, ceea ce este benefic în timp ce eliminăm un număr mare de înregistrări dintr-un tabel. Folosind declarația de ștergere, putem elimina și date în funcție de condiții.
Odată ce ștergem înregistrările folosind această interogare, nu le putem recupera . Prin urmare, înainte de a șterge orice înregistrări din tabel, se recomandă să creați o copie de rezervă a bazei de date . Backup-urile bazei de date ne permit să restaurăm datele ori de câte ori avem nevoie de ele în viitor.
turn string la int
Sintaxă:
Următoarele sunt sintaxa care ilustrează modul de utilizare a instrucțiunii DELETE:
DELETE FROM table_name WHERE condition;
În declarația de mai sus, trebuie mai întâi să specificăm numele tabelului din care dorim să ștergem datele. În al doilea rând, trebuie să specificăm condiția de ștergere a înregistrărilor în clauza WHERE , care este opțională. Dacă omitem clauza WHERE în instrucțiune, această interogare va elimina înregistrări întregi din tabelul bazei de date.
Dacă dorim să ștergem înregistrările din mai multe tabele folosind o singură interogare DELETE, trebuie să adăugăm A TE ALATURA clauză cu instrucțiunea DELETE.
Dacă dorim să ștergem toate înregistrările dintr-un tabel fără a cunoaște numărul rândurilor șterse, trebuie să folosim TABULA TRONCIARĂ afirmație care oferă performanțe mai bune.
Să înțelegem cum funcționează instrucțiunea DELETE MySQL prin diverse exemple.
Exemple de instrucțiuni MySQL DELETE
Aici, vom folosi „Angajați” și 'Plată' tabele pentru demonstrarea instrucțiunii DELETE. Să presupunem că tabelele de angajați și plăți conțin următoarele date:
comparare șiruri java
Dacă vrem să ștergem un angajat al cărui emp_id este 107 , ar trebui să folosim instrucțiunea DELETE cu clauza WHERE. Vedeți interogarea de mai jos:
mysql> DELETE FROM Employees WHERE emp_id=107;
După executarea interogării, va returna rezultatul ca imaginea de mai jos. Odată ce înregistrarea este ștearsă, verificați tabelul utilizând instrucțiunea SELECT:
Dacă dorim să ștergem toate înregistrările din tabel, nu este nevoie să folosim clauza WHERE cu instrucțiunea DELETE. Vedeți codul și rezultatul de mai jos:
În rezultatul de mai sus, putem vedea că după eliminarea tuturor rândurilor, tabelul Angajații va fi gol. Înseamnă că nu există înregistrări disponibile în tabelul selectat.
Clauza MySQL DELETE și LIMIT
Clauza MySQL Limit este folosită pentru a restricționa numărul de rânduri returnate din setul de rezultate, mai degrabă decât pentru a prelua toate înregistrările din tabel. Uneori dorim să limităm numărul de rânduri care trebuie șterse din tabel; în acest caz, vom folosi LIMITĂ clauza după cum urmează:
DELETE FROM table_name WHERE condition ORDER BY colm1, colm2, ... LIMIT row_count;
Este de remarcat că ordinea rândurilor dintr-un tabel MySQL este nespecificată. Prin urmare, ar trebui să folosim întotdeauna COMANDA PENTRU clauză în timp ce utilizați clauza LIMIT.
De exemplu , următoarea interogare sortează mai întâi angajații în funcție de numele lor alfabetic și șterge primii trei angajați din tabel:
mysql> DELETE FROM Employees ORDER BY name LIMIT 3;
Va da rezultatul de mai jos:
java localdate
Clauza MySQL DELETE și JOIN
Clauza JOIN este folosită pentru a adăuga cele două sau mai multe tabele în MySQL. Vom adăuga clauza JOIN cu instrucțiunea DELETE ori de câte ori dorim să ștergem înregistrări din mai multe tabele într-o singură interogare. Vedeți interogarea de mai jos:
mysql> DELETE Employees, Payment FROM Employees INNER JOIN Payment ON Employees.emp_id = Payment.emp_id WHERE Employees.emp_id = 102;
Ieșire:
După execuție, vom vedea rezultatul ca imaginea de mai jos:
Pentru a citi mai multe informații despre instrucțiunea DELETE cu clauza JOIN, click aici .