Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> сортировка 
:(
    Опции темы
ok_computer
Дата 16.1.2008, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 16.1.2008

Репутация: нет
Всего: 1



необходимо реализовать постраничную навигацию + сортировку по шапке таблицы в MSSQL. 

в MYSQL 

Код

SELECT * FROM table ORDER BY  $order LIMIT $begin, $pnumber//   
$begin – начальная позиция для отображения, $pnumber – кол-во записей на странице

в MSSQL конструкции подобной limit нет:

Код

SELECT TOP $pnumber * FROM table  
WHERE id NOT IN (SELECT TOP $begin id FROM table ORDER BY id) ORDER BY id  

здесь с сортировкой начинаются проблемы, переменную $order использовать нельзя, сортировать можно только по id.
как можно ее решить?

заранее спасибо.

PM MAIL   Вверх
ok_computer
Дата 17.1.2008, 09:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 16.1.2008

Репутация: нет
Всего: 1



и все таки будет запрос

Код

SELECT TOP $pnumber * FROM Table 
WHERE id NOT IN (SELECT TOP $begin id FROM Table ORDER BY date_registr, id) ORDER BY date_registr, id 



верной постр. выборкой?
или сортировка только ORDER BY id

PM MAIL   Вверх
kobra
Дата 17.1.2008, 13:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 15.6.2005
Где: Грузия, Тбилиси

Репутация: 5
Всего: 9



если сервер 2005, если я правилно понял проблему, поможет ROW_NUMBER
PM MAIL   Вверх
Akina
Дата 17.1.2008, 13:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 25
Всего: 454



Код

Select *
From
(
 Select Top $pnumber *
 From
 (
  Select Top $pnumber+$pbegin *
  From table
  Order By id Asc
 ) 
 Order By id Desc
)
Order By id Asc



--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS SQL"
Akina

Akina

Запрещается!

Публиковать ссылки и обсуждать взлом чего бы то ни было.

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы составления неспецифических запросов рассматриваются здесь
  • Используйте теги [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, Akina.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS SQL Server | Следующая тема »


 




[ Время генерации скрипта: 0.0662 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.