Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.05.29;
Скачать: [xml.tar.bz2];

Вниз

ADO и SQL (вопрос по SQL)   Найти похожие ветки 

 
DmitryNekl   (2003-05-06 18:14) [0]

Помогите, пожалуйста. Вопрос довольно глупый...

Есть база на Excel, нужно отобрать первые 5 записей.

Подключаюсь к Excelю с помощью ADO.
Пытаюсь отобрать все записи - все работает.
Пытаюсь отобрать первые 5 записей - не работает (отбираются все).
Запрос, который я использую, я смоделировал в Access -
"SELECT TOP 5 * FROM [Новости$] ORDER BY ""Дата"""

Что тут не так и как отобрать-таки 5 записей?
Заранее огромное спасибо :)


 
sniknik   (2003-05-06 18:40) [1]

делай так
SELECT TOP 5 * FROM [Новости$] ORDER BY [Дата ]

но того ли ты хочеш? это сначала отсортирует а после выдаст 5 записей из отсортированого набора (не совсем первые)

истинно первые будет так
SELECT * FROM (SELECT TOP 5 * FROM [Новости$]) ORDER BY [Дата]
(сортирует потом уже их)


 
DmitryNekl   (2003-05-06 18:48) [2]

Это просто гениально! :)))))
Спасибо огромное!!!!!


 
DmitryNekl   (2003-05-08 19:47) [3]

Тут проблемка обнаружилась - помогите разрешить. Есть таблица:
id, Дата, Заголовок, Текст.
Нужно отобрать первые пять записей, отсортированных по дате.
Я делаю так:
SELECT TOP 5 * FROM [Новости$] ORDER BY [Дата] DESC"

И проблема: если 5 и 6 записи имеют одинаковую дату, то отбираются 6 записей, а не 5 :(. Как бы отобрать все-таки 5 записей?

Заранее спасибо! :)


 
sniknik   (2003-05-08 22:30) [4]

ну да действительно... хм. именно если на переходе с одной на другую и именно если в конце. забавно.
и тд. 5 и 6 и 7 и 8 .... записи имеют одинаковую дату. если первая влазит в предел (5) то и остальные подтягиваются.

но вообще че ты как маленький прямо. ну сделай ему еще поверх ограничение ...
SELECT TOP 5 * FROM (SELECT TOP 5 * FROM [Новости$] ORDER BY [Дата] DESC)
(внутреннее ограничение тогда вроде как не нужно но лутше оставить, чтобы 2 раза операции над полной выборкой не производить)



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.05.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.009 c
6-94981
Provodnick
2003-02-12 09:00
2003.05.29
Как узнать IP-адрес компьютера в ЛС.


1-94888
Adil Aliev
2003-05-16 15:02
2003.05.29
Search & replace


1-94886
viol-2
2003-05-16 15:19
2003.05.29
Память как диск


1-94871
Vulko
2003-05-16 07:49
2003.05.29
Как перевести 10тиричное в 16ричное число...


3-94725
edst
2003-05-08 12:48
2003.05.29
Как организовать фильтрацию данных в SQL





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский