![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Связь нескольких запросов средствами Делфи...... [D7]
PP © (2006-12-04 19:04:00)Добрый день.
У меня такая проблемка. Необходима выборка данных из базы даных на Оракле. трудность заключается в том, что одним запросом это никак не сделать. Сделал 6 запросов. Возникает задача связать эти запросы, для получения объединённой таблицы. Трудность в том, что писать код могу только на клиенте.
Попытался сделать локальную базу данных, выполнить запрос с сервера и пробегая все записи, залить их в таблицу локальной БД. Так для всех запросов. После чего из локальной базы получил результирующую таблицу. Результата добился, но скорость сами понимаете не куда е годится.
Что можете посоветовать?
Заранее спасибо.
PP (2006-12-05 19:04:00) [1]Всем спасибо за участие.
> Sergey13 © (05.12.06 08:48) [10]
К сожалению сзоздавть временные таблицы возможности нет (доступ к серверу "только для чтения") :(
видимо придётся воять большущий динамический запрос...........
ANB (2006-12-05 11:59:00) [2]
> Sergey13 © (05.12.06 11:38) [14]
Я юзал. Удобная вещь, если нужно собрать большие результаты из разных источников в одно место, а потом изгалисто с ними работать. Тогда индексы нужные навешаешь - и все летает. Но обычно я это делаю, когда нарываюсь на тормоза.
Sergey13 (2006-12-05 11:38:00) [3]> [13] ANB © (05.12.06 11:34)
Все таки я останусь на своей точке зрения, хотя сам никогда не юзал влотную TT. Вещь неплохая, ИМХО.
ANB (2006-12-05 11:34:00) [4]
> Для этого Ораклы и придумали свои временные таблицы.
Ну - не для того, чтобы ленивые программеры, которым неохота SQL учить, набивали их кусками запросов :)
Sergey13 (2006-12-05 10:40:00) [5]> [11] ANB © (05.12.06 10:34)
> Не сбивай чела с пути истинного. :)
Для этого Ораклы и придумали свои временные таблицы. Теперь пути истинные многовариантны. 8-)
ANB (2006-12-05 10:34:00) [6]
> а к этим самым TQuery, с некоторыми данным
Нафига ?
> Через временные таблицы Оракла можно.
Не сбивай чела с пути истинного. :)
Если в запросах данные однородные - объеденить их с помощью union all
Если их надо как то связывать - подзапросы во фромовой части или очень удобная фича - with.
Sergey13 (2006-12-05 08:48:00) [7]> [8] PP (04.12.06 22:48)
Через временные таблицы Оракла можно.
Anatoly Podgoretsky (2006-12-04 22:52:00) [8]> PP (04.12.2006 22:48:08) [8]
Вот это уже конкретный вопрос, стандартными путями нет.
PP (2006-12-04 22:48:00) [9]Речь идёт о нескольких TQuery.
Вопрос, можно ли с помощью каких либо средств сделать запрос не к таблицам базы данных, а к этим самым TQuery, с некоторыми данными(Query1.active=true...........)
Anatoly Podgoretsky (2006-12-04 22:27:00) [10]> PP (04.12.2006 22:11:06) [6]
О создании каких новых таблиц идет речь и причем тут разные Query?
PP (2006-12-04 22:11:00) [11]Desdechado. спасибо за помощь.
Просто может я значально не до конца правильно объяснил чего я хочу.
Есть ли теоретическая возможность не создовая новых таблиц, делать выборку из разных Query?
Просто в некоторых ситуациях, боюсь одним запросом не обойтись, а необходима ещё и програмная обработка данных........
Desdechado (2006-12-04 21:33:00) [12]
Select z1.f1, z1.f2, z2.f2
from
( SELECT .... ) z1, ( SELECT .... ) z2
where z1.f1=z2.f1
я не оскорбляю
букварь-то почитай, это элементарный SQL, описанный в справке
PP (2006-12-04 21:08:00) [13]Desdechado, попросил бы не оскорблять.......
ANB, я может не правильно выразился. мне нужна выборка из запросов, а не добавление новых строк.
Упрощённо говоря, нужно каким-то образом сделать нечто подобное:
Select z1.f1, z1.f2, z2.f2
from zapros1 z1, zapros2 z2
where z1.f1=z2.f1...........
Desdechado (2006-12-04 20:18:00) [14]ты букварь-то почитай или в дворники гуляй
PP (2006-12-04 19:30:00) [15]ANB,
Необходимо данные из всех запросов объединить в один.
ANB (2006-12-04 19:08:00) [16]union all ?