Функция row_number возвращает сначала пустые строки, но не в том порядке, в котором они находятся в таблице

У меня есть таблица с одним элементом столбца из таблицы элементов

он имеет около 20 записей, где некоторые строки имеют пустые строки, но не имеют нулевых значений

Поэтому, когда я использую функцию row_number() для таблицы, как это

select ROW_NUMBER() over( order by item asc) as row,item  from items 

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

Я слышал, что row_number() будет генерировать последовательный номер для строк в том же порядке, в каком они были получены из таблицы.

я хочу получить записи с row_number в том же порядке, в котором они находятся в таблице, даже если строка содержит пустую строку, не ноль,

как это возможно

1 ответ

ROW_NUMBER всегда требует предложение ORDER BY. Так что невозможно получить записи в том же порядке, что и в таблице, используя функцию ROW_NUMBER.

Другие вопросы по тегам