logo

SQL naredba DELETE

Naredba SQL DELETE koristi se za uklanjanje određenih redaka iz tablice, a pritom zadržava strukturu tablice netaknutom. Razlikuje se od DROP-a koji briše cijelu tablicu.

  • Uklanja redove na temelju uvjeta.
  • Zadržava ograničenja i indekse sheme tablice.
  • Može izbrisati jedan red ili sve retke.

Primjer: Prvo ćemo stvoriti demo SQL baza podataka i tablica na kojoj ćemo koristiti SQL naredbu DELETE.

od' title=

Upit:



DELETE FROM Employees  
WHERE EmployeeID = 5;

Izlaz:

katrina kaif
Izbrisani red-' loading='lazy' title=
  • Ovaj upit briše redak iz tablice Zaposlenici gdje je EmployeeID 5.
  • Uklanja se samo taj određeni zapis; svi ostali redovi ostaju nepromijenjeni.

Sintaksa:

DELETE FROM table_name   
WHERE some_condition;
  • Neki_uvjet: Uvjet koji se koristi za filtriranje redaka koje želite izbrisati.
  • naziv_tablice: Naziv tablice iz koje želite izbrisati retke.

Bilješka: Možemo izbrisati jedan ili više zapisa koristeći WHERE klauzulu; ako je izostavljen, svi zapisi u tablici se uklanjaju.

Primjeri SQL naredbe DELETE

Pretpostavimo da smo kreirali tablicu pod nazivom GFG_Employee u SQL-u koja sadrži osobne podatke zaposlenika, uključujući njihov ID, ime e-pošte i odjel itd., kao što je prikazano u nastavku.

STVARANJE TABLICE GFG_Zaposlenici (
id INT PRIMARNI KLJUČ
ime VARCHAR (20)
email VARCHAR (25)
odjel VARCHAR(20)
);

INSERT INTO GFG_Employees (id name email odjel) VALUES
(1 'Jessie' '[email protected]' 'Razvoj')
(2 'Praveen' '[email protected]' 'HR')
(3 'Može' '[email protected]' 'Prodaja')
(4 'Rithvik' '[email protected]' 'IT')
(5 'Suraj' '[email protected]' 'Osiguranje kvalitete')
(6 'Om' '[email protected]' 'IT')
(7 'Naruto' '[email protected]' 'Razvoj');

Odaberite * Iz GFG_Employees

negacija diskretna matematika

Izlaz:

GFG_zaposlenik' loading='lazy' title=

Primjer 1: Brisanje jednog zapisa

Možemo koristiti naredbu DELETE s uvjetom za brisanje određenog retka iz tablice. The GDJE klauzula osigurava uklanjanje samo željenog zapisa. Zapise pod nazivom Rithvik možemo izbrisati korištenjem upita u nastavku:

Upit:

DELETE FROM GFG_Employees   
WHERE NAME = 'Rithvik';

Izlaz:

obrisano-info' loading='lazy' title=

Primjer 2: Brisanje više zapisa

Za brisanje više zapisa možete navesti uvjet koji odgovara nekoliko redaka. Izbrišite retke iz tablice  GFG_Employees gdje je odjel 'Razvoj'. Ovo će izbrisati 2 retka (prvi red i sedmi red).

python ili

Upit:

DELETE FROM GFG_Employees   
WHERE department = 'Development';

Izlaz

odjelu' loading='lazy' title=

Primjer 3: Brisanje svih zapisa iz tablice

Ako trebamo izbrisati sve zapise iz tablice, možemo izostaviti klauzulu WHERE ili alternativno koristiti naredbu DELETE sa zvjezdicom (*) za označavanje svih redaka.

Upit:

DELETE FROM GFG_Employees;  
Or
DELETE * FROM GFG_Employees;

Izlaz:

python operator ostatka
prazan' loading='lazy' title=

Svi zapisi u tablici bit će izbrisani, nema preostalih zapisa za prikaz. Tablica GFG_Employees  postat će prazna.

Vraćanje operacija DELETE

Budući da je naredba DELETE DML operacija, može se vratiti kada se izvrši u naredbi. Ako slučajno izbrišete zapise ili trebate ponoviti postupak, možete upotrijebiti POVRATAK naredba.

Upit:

START TRANSACTION;  
DELETE FROM GFG_Employees WHERE department = 'Development';
-- If needed you can rollback the deletion
ROLLBACK;

Obrazloženje: Naredba ROLLBACK će poništiti promjene napravljene naredbom DELETE učinkovito vraćajući zapise koji su izbrisani tijekom transakcije.

Napravi kviz