powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / выборка после сортировки
7 сообщений из 7, страница 1 из 1
выборка после сортировки
    #39782241
panthe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мне нужно сначала отсортировать данные по номеру(представлен строкой переменной длинны, не число) а затем вывести кусок из упорядоченного набора. нужно для постраничного вывода большого объема данных через хранимую процедуру. Ошибка - Предложение ORDER BY не допускается в представлениях, встроенных функциях, производных таблицах, вложенных запросах и обобщенных табличных выражениях, если вместе с ним не указано предложение TOP, OFFSET или FOR XML.

Код: sql
1.
2.
SELECT * FROM (SELECT * FROM data_from_ch ORDER BY invoice_number) AS a
	WHERE ROW_NUMBER() > @skip AND ROW_NUMBER() <= @skip + @countatpage;
...
Рейтинг: 0 / 0
выборка после сортировки
    #39782250
panthe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
2.
3.
SELECT * FROM data_from_ch AS a
	WHERE ROW_NUMBER() OVER (ORDER BY a.invoice_number) > @skip AND
	 ROW_NUMBER() OVER (ORDER BY a.invoice_number) <= @skip + @countatpage;
...
Рейтинг: 0 / 0
выборка после сортировки
    #39782253
panthe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
2.
3.
4.
SELECT * FROM (SELECT ROW_NUMBER() OVER (ORDER BY b.invoice_number) AS num, b.*
	FROM data_from_ch AS b) AS a
	WHERE num > @skip AND
	 num <= @skip + @countatpage;
...
Рейтинг: 0 / 0
выборка после сортировки
    #39782287
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
panthe
Код: sql
1.
2.
3.
4.
SELECT * FROM (SELECT ROW_NUMBER() OVER (ORDER BY b.invoice_number) AS num, b.*
	FROM data_from_ch AS b) AS a
	WHERE num > @skip AND
	 num <= @skip + @countatpage;

Тут появляется ошибка?
Вроде всё правильно.
...
Рейтинг: 0 / 0
выборка после сортировки
    #39782334
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как же правильно когда ORDER BY тут и нету.

Автор top @countatpage тебя спасет
...
Рейтинг: 0 / 0
выборка после сортировки
    #39782733
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan Durakкак же правильно когда ORDER BY тут и нету.А, я думал, это запрос с ошибкой.

panthe
Код: sql
1.
2.
3.
4.
SELECT * FROM (SELECT ROW_NUMBER() OVER (ORDER BY b.invoice_number) AS num, b.*
	FROM data_from_ch AS b) AS a
	WHERE num > @skip AND
	 num <= @skip + @countatpage;

Теперь добавляем ORDER BY:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
SELECT * 
FROM (
	SELECT ROW_NUMBER() OVER (ORDER BY b.invoice_number) AS num, b.*
	FROM data_from_ch AS b
	) AS a
WHERE num > @skip 
  AND num <= @skip + @countatpage        
ORDER BY num
...
Рейтинг: 0 / 0
выборка после сортировки
    #39782804
nullin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
2.
3.
4.
5.
SELECT b.*
  FROM data_from_ch AS b
 ORDER BY ROW_NUMBER() OVER (ORDER BY b.invoice_number)
OFFSET @skip ROWS
 FETCH NEXT @countatpage ROWS ONLY
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / выборка после сортировки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]