В этом учебном пособии вы узнаете, как использовать оператор DELETE TOP в SQL Server (Transact-SQL) с синтаксисом и примерами.
Описание
Оператор DELETE TOP SQL Server (Transact-SQL) используется для удаления записей из таблицы в SQL Server и ограничения количества записей, удаленных на основе фиксированного значения или процента.
Синтаксис
Синтаксис оператора DELETE TOP в SQL Server (Transact-SQL):
FROM table
[WHERE conditions];
Параметры или аргументы
table - таблица, из которой вы хотите удалить записи.
WHERE conditions -необязательный. Условия, которые должны быть выполнены для записей, подлежащих удалению.
TOP (top_value) - удалит верхнее число строк в результирующем наборе на основе top_value. Например, TOP (10) удалит первые 10 строк, соответствующих критериям удаления.
PERCENT - необязательный. Если задан PERCENT, то верхние строки основаны на проценте top_value от общего набора результатов (как определено значением PERCENT). Например, TOP (10) PERCENT удалит первые 10% записей, соответствующих критериям удаления.
Примечание
Вам не нужно указывать поля в операторе DELETE SQL Server, так как вы удаляете всю строку из таблицы.
Пример использования ключевого слова TOP
Рассмотрим пример SQL Server, где мы используем ключевое слово TOP в операторе DELETE.
Например:
1 2 3 |
DELETE TOP(10) FROM employees WHERE last_name = 'Баранов'; |
Этот пример SQL Server DELETE TOP удалит первые 10 записей из таблицы employees, где last_name - 'Баранов'. Если в таблице employee есть другие записи с last_name 'Баранов', они не будут удалены оператором DELETE TOP.
Пример использования ключевого слова TOP PERCENT
Рассмотрим пример SQL Server, где мы используем ключевое слово TOP PERCENT в операторе DELETE.
Например:
1 2 3 |
DELETE TOP(25) PERCENT FROM employees WHERE first_name = 'Жора'; |
Этот пример SQL Server DELETE TOP удалит первые 25% записей, соответствующих критериям DELETE TOP. Поэтому в этом примере оператор DELETE TOP удалит 25% записей из таблицы employees, где first_name является 'Жора'. Другие 75% записей, соответствующих этим критериям, не будут удалены оператором DELETE TOP.