Подобно выбранному ответу, можно использовать источник таблицы, в данном случае производный запрос:
delete from dd
from (
select top 1 *
from my_table
) dd
Не стесняйтесь добавлять заказы и условия.
В следующем примере я предполагаю, что ограничение 'где' связано с нежеланием выбирать строку на основе ее значений. Итак, предположим, что мы хотим удалить строку на основе позиции (в данном случае первой позиции):
delete from dd
from (
select
*,
row = row_number() over (order by (select 1))
from my_table
) dd
where row = 1
Обратите внимание, что (select 1) устанавливает порядок сортировки таблиц или индексов. Вы можете заменить его на newid для получения довольно случайных строк.
Вы также можете добавить раздел для удаления, например, верхней строки каждого цвета.