Страница 1 из 1

Не выполняется сложный(для меня) запрос...

Добавлено: 22 июл 2004, 12:47
GOS
Здравсвуйте, заранее благодарю за помощь!

Вот мой запрос:
SELECT B_ID ,(SELECT SUM(ZD_CNT) FROM Zakaz_M, Zakaz_D Where (ZM_ID=ZD_ZID) AND (ZM_DATA_SOZD BETWEEN "01.01.2004" AND "31.12.2004") AND (ZD_BID=Book.B_ID))
FROM Book;

где Book-таблица книг
Zakaz_M-главная таблица заказов
Zakaz_d-детальная таблица заказов

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

Если выполнить SELECT SUM(ZD_CNT) FROM Zakaz_M, Zakaz_D Where (ZM_ID=ZD_ZID) AND (ZM_DATA_SOZD BETWEEN "01.01.2004" AND "31.12.2004") AND (ZD_BID=9)
то выводится колличество заказанных книг с кодом девять,
а если выполнить первый запрос то колонка с колличеством пустая :(

Подскажите что делать?

PS Paradox>BDE>TQuery
Запрос выполняю в SQL Explorer

Добавлено: 22 июл 2004, 13:11
AiK
GOS, есть такой предикат group by называется.

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

Select SUM(ZD_CNT), B_ID  from  ZAKAZ where ZM_DATA_SOZD BETWEEN .. AND .. and ZM_ID = ZD_ID group by B_ID

Добавлено: 22 июл 2004, 14:18
GOS
Спасибо, всё заработало :)