Изтриване на таблица в SQL

Iztrivane Na Tablica V Sql



В SQL операторът DELETE е израз на езика за манипулиране на данни, който ни позволява да изтрием един или повече редове от съществуваща таблица на база данни. Изявлението приема условие, намира редовете, които отговарят на посочените критерии, и ги премахва от таблицата.

В този урок ще разгледаме оператора DELETE в SQL, за да научим как можем да го използваме, за да изтрием съществуващ ред от таблица.

Изтриване на изявление

Следното показва синтаксиса на оператора DELETE в SQL:







ИЗТРИЙ

ОТ

име_на_таблица

КЪДЕТО

състояние;

Започваме с клаузата DELETE, за да кажем на двигателя на базата данни, че искаме да премахнем ред или няколко реда.



След това посочваме името на таблицата, от която искаме да премахнем редовете. След това уточняваме условието в клаузата WHERE. Това е важна клауза, тъй като ни позволява да стесним кои конкретни редове искаме да премахнем.



Ако пропуснем клаузата WHERE, операторът ще премахне всички редове от указаната таблица. Използвайте с повишено внимание.





След това изразът връща броя на редовете, които са изтрити от таблицата.

Примерна таблица

Преди да преминем към примерите за това как да използваме оператора DELETE, нека създадем основна таблица за демонстрационни цели.



Изявлението CREATE TABLE е както следва:

CREATE TABLE продукти (
product_id INT PRIMARY KEY AUTO_INCREMENT,
име на продукт VARCHAR( 255 ),
категория VARCHAR( 255 ),
цена DECIMAL( 10 , 2 ),
количество INT,
дата на изтичане DATE,
баркод BIGINT
);

След като създадем таблицата, можем да вмъкнем примерните данни в таблицата, както е показано в следните инструкции за вмъкване:

вмъкнете
в
продукти (име_на_продукт,
категория,
цена,
количество,
срок на годност,
баркод)
стойности ( 'Шапка за готвач 25см' ,
'пекарна' ,
24,67 ,
57 ,
„2023-09-09“ ,
2854509564204 );

вмъкнете
в
продукти (име_на_продукт,
категория,
цена,
количество,
срок на годност,
баркод)
стойности ( „Пъдпъдъчи яйца – консерва“ ,
'килер' ,
17,99 ,
67 ,
„29 септември 2023 г.“ ,
1708039594250 );

вмъкнете
в
продукти (име_на_продукт,
категория,
цена,
количество,
срок на годност,
баркод)
стойности ( „Кафе - Egg Nog Capuccino“ ,
'пекарна' ,
92,53 ,
10 ,
„22 септември 2023 г.“ ,
8704051853058 );

вмъкнете
в
продукти (име_на_продукт,
категория,
цена,
количество,
срок на годност,
баркод)
стойности ( 'Круша - Бодлива' ,
'пекарна' ,
65,29 ,
48 ,
„23 август 2023 г.“ ,
5174927442238 );

вмъкнете
в
продукти (име_на_продукт,
категория,
цена,
количество,
срок на годност,
баркод)
стойности ( „Паста – ангелска коса“ ,
'килер' ,
48,38 ,
59 ,
'2023-08-05' ,
8008123704782 );

Това трябва да ни предостави таблица, както следва:

Пример 1: Изтриване на един ред

Най-основната операция за изтриване е премахването на един ред от таблицата. За целта можете да използвате колоната с уникалната стойност, която идентифицира целевия ред.

Например, ако искаме да премахнем реда „Свинско месо – рамо“, който има идентификатор 9, можем да използваме клаузата, както следва:

ИЗТРИЙ
ОТ
продукти
КЪДЕТО
product_id = 9 ;

Това просто трябва да премахне реда с ID номер 9. Тъй като колоната „product_id“ е първичен ключ, трябва да има само един ред с тази стойност.

Пример 2: Изтриване на няколко реда

За да изтрием множество редове, можем да зададем условието за целевите редове с помощта на клаузата WHERE. Можем да използваме условни оператори като IN, NOT IN, LIKE и т.н.

Да предположим например, че искаме да премахнем всички редове от килера и производствените категории. Можем да използваме заявката, както следва:

ИЗТРИЙ
ОТ
продукти
КЪДЕТО
категория IN ( 'произвеждам' , 'пекарна' );

Това трябва да съответства на стойностите „продукция“ и „пекарна“ в колоната „категория“ и да премахне всички редове, които отговарят на това условие.

Заключение

В този урок научихме всичко за оператора DELETE, който ни позволява да премахнем един или повече редове от дадена таблица на база данни.