Сложный для меня запрос. Помогите, пожалуйста, найти решение

SQL во всех проявлениях - от ANSI-92 до TSQL.

Модераторы: Yurich, Absurd

Аватара пользователя
AiK
Сообщения: 2274
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

26 сен 2004, 14:18

chur, позволь поинтересоваться, в каком из Paradox'ов появилась возможность сделать выборку из другой выборки?
Сдаётся мне, что и IIF это из Access'a.
Даже самый дурацкий замысел можно воплотить мастерски
chur
Сообщения: 195
Зарегистрирован: 17 фев 2004, 10:44
Откуда: Riga, Latvia

26 сен 2004, 21:01

Про Paradox ничего не скажу, не знаю, но через BDE организовать выборку из выборки, наверно, можно.
IIF конечно из Access'а, но в Paradox'е, я надеюсь, есть аналогичные конструкции.
Аватара пользователя
Naeel Maqsudov
Сообщения: 2551
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

11 окт 2004, 22:29

НЕТ в Paradox никакого IIF и близко не стояло! Очень бедно там со встроенными функциями....
Аватара пользователя
Naeel Maqsudov
Сообщения: 2551
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

11 окт 2004, 22:50

Предлагаю сделать так:

Код: Выделить всё

SELECT 
  B_ID, B_NAZV, B_AVT, 
  (SELECT SUM(ZD_CNT) FROM Zakaz_M,Zakaz_D 
   WHERE ZD_BID=B_ID and ZM_ID=ZD_ZID and
   ZM_DATA_SOZD BETWEEN '01.01.2004' AND '31.12.2004'
  ),
  (SELECT SUM(ZOD_CNT) FROM ZakazO_M,ZakazO_D 
   WHERE ZOD_BID=B_ID and ZOM_ID=ZOD_ZID and
   ZOM_DATA_SOZD BETWEEN '01.01.2004' AND '31.12.2004'
  )
FROM 
  Book
ORDER BY B_NAZV, B_AVT 

Subquery форэва!!! :)
Ответить