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

Вниз

TADOQuery   Найти похожие ветки 

 
Apl   (2006-02-02 16:38) [0]

Помогите.
Возможно ли из одного TADOQuery (TQuery и т.п.) обращаться к результату запроса выполненного в другом TADOQuery.
Что-то типа: Есть некая таблица (справочник категорий) порядка 1000 записей моделирующих древовидную структуру. Есть вторая таблица в которой используются данные этого справочника (порядка 100 вариантов и 30000 записей). Нужно подсчитать сколько каких категорий используется и отобразить вместе с названием в TreeView.
По отображению проблем нет :)), но когда выполняеш многократно запросы для каждой категоии - основная масса - пустышки, т.к. эти категории не использованы а время расходуется ну очень много. Очень бы хотелось сормировать промежуточный запрос в первом TADOQuery типа
Select id,cnt(*) from table1 (написал в нотации FoxPro :))))
а из второго запрашивать уже не большую таблицу а
этот промежуточный результат.


 
Sergey13 ©   (2006-02-02 16:42) [1]

Может просто надо одним запросом с group by вытащить все нужное одним махом?
Или я не понял ничего.


 
apl   (2006-02-02 16:52) [2]

Одним махом можно подсчитать и это - просто.
Кроме подсчета нужно отобразить в TreeView название элемента справочника и, если он использовался, кол-во
Элементы справочника имеют код который и определяет структуру отображаемого дерева
id1   Элемент 1        001000
id2   Элемент 1.1     001100
id3   Элемент 1.1.1  001110
id4   Элемент 1.1.2  001120
id5   Элемент 2       002000 и т.д.
Нужно показать или только те которые реально использовались (запрос c group by) или показать все элементы справочника указывая сколько раз использован в таблице


 
msguns ©   (2006-02-02 17:47) [3]

Jet (ADO) понимает вложенные запросы: Select bla-bla-bla from (Select)
В Local SQL (BDE) делается через сохранение текста "внутреннего" запороса в текстовый файл, а к нему уже обращение из "внешнего".



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

Форум: "Начинающим";
Текущий архив: 2006.02.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.033 c
15-1138138055
Германн
2006-01-25 00:27
2006.02.19
Мультизагрузчик ОС


2-1139064527
Serg1981
2006-02-04 17:48
2006.02.19
Application.ProcessMessages


2-1138729598
The Sound
2006-01-31 20:46
2006.02.19
Из чара(ord), в нормальный вид.


6-1131213238
Volf_555
2005-11-05 20:53
2006.02.19
Как до закачки файла из сети, определить его размер


15-1138621065
Silica
2006-01-30 14:37
2006.02.19
Кнут





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский