Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.05;
Скачать: CL | DM;

Вниз

удаление? записей из запроса   Найти похожие ветки 

 
Мыш ©   (2004-02-06 20:41) [0]

Можно ли имея уже готовую выборку, созданную запросом в TQuery модифицировать без изменения исходного набора данных (т.е. физической таблицы)? Извиняюсь за возможно неправильную терминологию, поясню еще так: есть таблица на диске, база - парадокс, движок - БДЕ, я делаю выборку из этой таблицы например "SELECT * FROM таблица WHERE Num>5"
А потом мне нужно из выбранных к примеру, 20 записей, получить вссего пять, выбрав их случайным образом. Как это сделать без создания временной таблицы на диске, в которую просто циклом используя moveby и random выбрать 5 записей, а уже потом из временной - селект олл.() - это единственный способ, который приходит в голову Нет ли более элегантного решения? Спасибо.


 
Johnmen ©   (2004-02-07 00:02) [1]

А что потом делать с этими 5"ю записями ?


 
sniknik ©   (2004-02-07 00:03) [2]

проще всего использовать фильтр(значения для фильтра через random) а не получать физически обрезанный набор, ведь у тебя BDE он отсоеденение рекорсета как в ADO непозволяет.
посложнее можно результет запроса сделать таблицей (DbiMakePermanent) и удалить лишнее ... ну или повторить выборку из нее как у тебя.


 
Мыш ©   (2004-02-07 22:49) [3]

Да, DbiMakePermanent действительно хороший выход. Вот только я не понял - где эта функция находится? В методах TQuery нет, в исходниках дельфи - нет.. Чего же в юзес прописывать?


 
sniknik ©   (2004-02-07 22:52) [4]

BDE



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

Текущий архив: 2004.03.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
14-12487
syte_ser78
2004-02-12 10:17
2004.03.05
Загрузка процессора


14-12495
Verg
2004-02-13 11:25
2004.03.05
Открытие документа, лежащего на FTP


1-12440
MVova
2004-02-23 11:27
2004.03.05
Работа c UNICODE (получить польский символ)


11-12308
MTsv DN
2003-06-20 10:49
2004.03.05
Стиль Office XP


1-12391
Гарри Поттер
2004-02-24 21:54
2004.03.05
Key = VK_1 //ошибка