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

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

Вопрос про запрос


Сергей Ю. ©   (2004-12-16 09:24:00) 

Делаю так: select pos.idnom,sum(pos.kolvo) from pos,nom where pos.idnom=nom.idnom group by pos.idnom
Все работает но мне надо чтоб вместо идентификатора pos.idnom подставлялось значение из другой таблицы.
Пробую так: select nom.name,pos.idnom,sum(pos.kolvo) from pos,nom where pos.idnom=nom.idnom group by pos.idnom
Дык говорит что nom.name тут "не к месту"


Сергей Ю.   (2004-12-16 13:33:00) [1]

Спасибо DenK_vrtz. То что нужно.


Val   (2004-12-16 11:37:00) [2]

А если соотв.имени нет? Потеряем строки.
Я думаю, это должно быть внешним объединением.


asp   (2004-12-16 09:48:00) [3]

Если это, вдруг, BD2, то можно не делать еще группировку по наименованию.
WITH Q1(IDNOM, KOL_SUM) AS
(SELECT P.IDNOM, SUM(P.KOLVO)
FROM POS P
GROUP BY P.IDNOM)
SELECT NOM.NAME, Q1.IDNOM, Q1.KOL_SUM
FROM NOM
 INNER JOIN Q1 ON (Q1.IDNOM = NOM.IDNOM)


Александр Иванов   (2004-12-16 09:35:00) [4]

Логично, группировать надо по всем полям, выбираемым в запросе


DenK_vrtz   (2004-12-16 09:33:00) [5]

select nom.name,sum(pos.kolvo) from pos,nom where pos.idnom=nom.idnom group by nom.name

либо

select nom.name,pos.idnom,sum(pos.kolvo) from pos,nom where pos.idnom=nom.idnom group by nom.name,pos.idnom

а вообще не очень понятно, что должно быть результатом запроса, если не считать sum(pos.kolvo)


asp   (2004-12-16 09:26:00) [6]

СУБД?


Наверх

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