![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Повторное использование данных 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=чего-то-там)