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

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

Запрос [IB6.x]


mva ©   (2004-12-29 13:53:00) 

Помогите изменить запрос.
Есть две таблицы: FIRST(ID,DAT)-номер заказа, дата заказа
SECOND(ID,ID_TOV,KOLVO) -Номер заказа, номер товара, количество.
Пишу запрос на суммирование всего количества одного вида товара
после даты ДАТА1.

Select  SUM(SECOND.KOLVO) from FIRST INNER JOIN SECOND
on FIRST.ID = SECOND.ID
Group by FIRST.DAT,SECOND.ID
HAVING (FIRST.DAT > 'ДАТА1') and  SECOND.ID_TOV='ЧИСЛО'
Получается  выборка ВСЕХ количеств этого номера товара после данной даты, а нужна сумма.Что неправильно?
Спасибо.


mva   (2004-12-29 14:10:00) [1]

Спасибо за оперативность и "путность"


msguns   (2004-12-29 14:01:00) [2]

Во блин, а я да Having даже и не дошел. А нафиг он здесь нужен ?


msguns   (2004-12-29 13:59:00) [3]

Ты ж на первое место поставил вторичную таблицу, а не главную - вот она тебе и шандарахтит все ее ключи (ID) - и правильно делает, гадина !
Почитай об INNER либо используй вместо него WHERE (я так понимаю, что в подчиненной нет мастер-ключей, отсутствующих в главной, тогда Join надо заменить на where)


Johnmen   (2004-12-29 13:58:00) [4]

HAVING неуместен, д.б. WHERE
В группировке поменять порядок.
Что за сумма имеется в виду?


Соловьев   (2004-12-29 13:57:00) [5]

Select  SUM(SECOND.KOLVO) from FIRST INNER JOIN SECOND
on FIRST.ID = SECOND.ID
where (FIRST.DAT > 'ДАТА1') and  SECOND.ID_TOV='ЧИСЛО'


Наверх

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