![]() |
|
#1
|
|||
|
|||
![]() Имеется запрос1 к базе.
Как записать запрос2, что бы он работал ТОЛЬКО с данными, полученными в запросе1. Что то типа Код:
select...From adoquery1 where... Можно конечно в запросе2 указать теже условия что и в запросе1, но для верности хочется работать с уже отобранными данными. |
#2
|
|||
|
|||
![]() Это?
Код:
select * from ( select f1,f2,f3 from tbl1 ) foo where f1 = 1000; А, вообще, можно и view сделать из первого запроса... |
#3
|
|||
|
|||
![]() Цитата:
Здесь происходит дублирование запроса1, а нужно работать с уже отобранными данными. Может как то можно подвязать datasource, относящийся к adoquery1? |
#4
|
|||
|
|||
![]() Не догоняю я никак....
Вот первый запрос Код:
A1:=STRTOINT(FORM2.Edit1.Text); ADOQUERY1.Close; ADOQUERY1.SQL.Text:='select S, OTD, DATA_POS, FIO, SUMMA, VAL, SD_V_KL, SD_V_CBU '+ 'FROM INKASSO '+ 'WHERE OTD=:A1 AND SD_V_KL<>1 AND SD_V_CBU<>1'; ADOQUERY1.Parameters[0].Value:=A1; ADOQUERY1.Open; AS 30 и AS 40 нужны, чтобы потом эти суммы показать в EDIT |
#5
|
|||
|
|||
![]() Тогда считай кодом на клиенте. Напрямую Дельфи такое не позволяет.
Либо можно выполнить простенький дополнительный запрос, но он будет повторять этот запрос. |
#6
|
||||
|
||||
![]() да все правильно уважаемый lmikle написал
и это будет не "дублирование запроса1", а создание временной таблицы, типа, представь, что у тебя есть такая таблица, вот и выбирай с нее суммы, количества, средние... т.е. Код:
SELECT (SELECT SUM(SUMMA) where VAL = 30) as Sum_30, (SELECT SUM(SUMMA) where VAL = 40) as Sum_40 FROM (SELECT S, OTD, DATA_POS, FIO, SUMMA, VAL, SD_V_KL, SD_V_CBU FROM INKASSO WHERE OTD=:A1 AND SD_V_KL<>1 AND SD_V_CBU<>1) as My_New_Table Я за здоровый экстрим! Спасибо за "спасибо") |
#7
|
||||
|
||||
![]() Код:
SELECT s, otd, data_pos, fio, summa, val, sd_v_kl, sd_v_cbu, SUM(IIF(val = 30, summa, 0)) s30, SUM(IIF(val = 40, summa, 0)) s40 FROM inkasso WHERE otd = :a1 AND sd_v_kl <> 1 AND sd_v_cbu <> 1 GROUP BY 1, 2, 3, 4, 5, 6, 7, 8 Поживу - увижу, Доживу - узнаю, Выживу - учту. ![]() [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
|
#8
|
|||
|
|||
![]() Цитата:
Только один вопрос: вот это "as My_New_Table" - произвольное имя? |
#9
|
|||
|
|||
![]() Да, произвольное. Многие сервера требуют, что бы внутренние запросы были именованные.
|