Как удалить первые несколько записей в MS SQL ?

Возникла одна довольно простая задача – удалить из таблицы 10 первых записей. Решить ее можно как минимум 2 способами:

set rowcount 10 delete from test_table set rowcount 0
(Это самый простой способ и иногда единственно верный(если в талице нет уникального индекса). Но в руководстве пользователя рекомендуют его не использовать, возможно он будет не совместим с дальнейшими версиями сервера)

delete test_table from (select top 10 * from test_table) as t where t.unique_index=test_table.unique_index

(Этот способ рекомендуют в руководстве и для него нужен уникальный индекс)



Digital Ocean
Провайдер облачного хостинга - заведи свой виртуальный сервер всего за $5 в месяц !

2 Comments

  1. Dio

    delete top (10) from test

Leave a Reply