Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Повторное использование данных SQL запроса


viper03 ©   (2007-01-22 05:25:00) 

Подскажите, как датасет возвращаемый запросом использовать в других запросах?
Есть 3 таблицы: Товар, Остаток, Цена.
Товар содержит поля ID, Descr.
Остаток - ID, kolvo; И цена - ID, Tsena.
формирую запрос:
select * from tovar
where id=чего-то-там

и теперь этот запрос я хочу использовать по другим таблицам:
select id, descr, kolvo
from ostatok, <первый_запрос>
where ostatok.id=первый_запрос.id

Можно это как-нибудь реализовать?


Johnmen   (2007-01-22 11:24:00) [1]

Неплохо бы чего-нибудь по SQL почитать. Про соединение таблиц, например...


Sergey13   (2007-01-22 09:04:00) [2]

> [2] viper03 ©   (22.01.07 08:51)

В некоторых СУБД есть такие штуки как представления (вьюхи) и хранимые процедуры, которые можно использовать, в том числе, и для повторного использования кода.


viper03   (2007-01-22 08:51:00) [3]

так вот так и приходится делать...
но текст запроса получается с такими вложениями ... хоть и пытаюсь комментировать по мере возможности, но все равно спустя время разобраться для чего это нужно достаточно проблематично..
вот я и подумал: может можно код сделать более читабельным...


Sergey13   (2007-01-22 08:33:00) [4]

> [0] viper03 ©   (22.01.07 05:25)

Возвращенный датасет в другом запросе использовать нельзя. Текстпервого запроса можно (желательно с переработками) использовать в текстедругого запроса.
Например (есть и другие варианты)

select id, descr, kolvo
from ostatok
where ostatok.id in (select id from tovar where id=чего-то-там)


Наверх

Титульная страница Поиск, карта сайта Написать письмо