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

Вниз

Как выполнить запрос из результата запроса   Найти похожие ветки 

 
rusa   (2003-02-04 13:55) [0]

Всем доброго дня!
Ребяты, я столкнулся со следующей проблемой:
Выбираю данные из ORACLE 8.1.7.4, но мне необходимо ёще
и проселектить имеющиеся данные от первого запроса. Я
не хочу создавать временных таблиц. Может кто знает способ
как это сделать? Работаю через BDE, но при выполнении второго
запроса BDE ищет файл в директории с exe-файлом. Конечно же его
там нет --> Ошибка: нет файла ..... и все стандартные расширения.

Я узнал способ, что можно с помощью SQL Explorer написать запрос
и сохранить его в папке с exe-файлом, а потом делать выборку из этого sql-файла. Он автоматически вернет данные и мой селект уже выберет из них. Но, мне такая схема не нравится. Должен же быть какой-то способ, что бы выбирать из уже выполненных селектов.

Если кто знает, поделитесь пожалуйста своим опытом!!!

:-)


 
AlexSerp   (2003-02-04 14:07) [1]

select ... from (select ... from ...)
не помогает?

Саня


 
passm   (2003-02-04 14:07) [2]

rusa (04.02.03 13:55)> В твоем вопросе вижу переплетение:
1. TQuery.SQL.SaveToFile & TQuery.SQL.LoadFromFile - сомневаюсь, что ты спрашиваешь об этом, но напрашивается...
2. Если необходимо выполнить запрос над запросом, то
SELECT Q1.*, Q2.*
FROM (SELECT...) AS Q1(FIELD1, FIELD2...)
INNER JOIN Q2 ON (Q1.FIELD1 = Q2.FIELD1)
Это, разумеется, схема.


 
rusa   (2003-02-04 14:13) [3]

<-- select ... from (select ... from ...) -->

Конечно, вложенный селект сделает своё дело. Мне просто в целях
экономии ресурсов сервера БД хотелось бы не выполнять то, что можно сделать 1 раз и уже локально с этим работать.


 
AlexSerp   (2003-02-04 14:14) [4]

В таком случае не использовать ли TClientDataSet?

Саня


 
rusa   (2003-02-04 14:18) [5]

А можно ли из TClientDataSet потом выбирать с помощью TQuery без применения всяких ухищрений?


 
passm   (2003-02-04 14:23) [6]

AlexSerp © (04.02.03 14:14)> Не подходит. Он SELECT над ним хочет делать.
rusa (04.02.03 14:13)> Получается, что тебе придется создавать локальные копии данных (DBase, Paradox...) и выполнять запрос над ними. Иначе, если делать запрос над двумя БД, то исполняться он будет на клиенте, что, мягко говоря, нехорошо. Ты уверен, что получишь экономию ресурсов?
IMHO надо идти по пути оптимизации БД и запросов, если хочешь экономить ресурсы.


 
AlexSerp   (2003-02-04 14:27) [7]

Дык, можно потом на том НД все получить с помощью фильтров.
И вроде как TClientDataSet позволяет сохранять данные на локальном диске.

Саня


 
passm   (2003-02-04 14:31) [8]

AlexSerp © (04.02.03 14:27)> SQL и фильтра на НД - разные вещи.
Сохранишь ты данные на локальном диске. Но Oracle как ты его подсунешь?


 
ShuraGrp   (2003-02-04 15:31) [9]

Можно попробовать что-то типа virtual table. В RX и ODAC есть такие компоненты.



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

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

Наверх





Память: 0.46 MB
Время: 0.008 c
4-63906
Scorp
2003-01-08 21:53
2003.02.20
Програмное выполнение команды через командную строку


3-63587
mate
2003-02-02 12:13
2003.02.20
QReport и Query


1-63615
perseptron
2003-02-11 13:00
2003.02.20
Скролинг текста в RichEdit


1-63660
XXX
2003-02-12 00:59
2003.02.20
Создание WebBrowser Помогите ПЛЗ!


7-63873
Status_I
2002-12-15 03:22
2003.02.20
Установка шрифта





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