Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.16;
Скачать: CL | DM;

Вниз

Вопрос про запрос   Найти похожие ветки 

 
Сергей Ю.   (2004-12-16 09:24) [0]

Делаю так: 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 тут "не к месту"


 
asp ©   (2004-12-16 09:26) [1]

СУБД?


 
DenK_vrtz ©   (2004-12-16 09:33) [2]

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)


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

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


 
asp ©   (2004-12-16 09:48) [4]

Если это, вдруг, 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)


 
Val ©   (2004-12-16 11:37) [5]

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


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

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



Страницы: 1 вся ветка

Текущий архив: 2005.01.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.036 c
1-1104748480
Roobee
2005-01-03 13:34
2005.01.16
TParser - как побороть?


3-1102622483
serko
2004-12-09 23:01
2005.01.16
DBGridEh


1-1103616175
kull
2004-12-21 11:02
2005.01.16
Существует ли проблемма?


3-1103125117
sashok
2004-12-15 18:38
2005.01.16
Помогите с фильтрацией в DBGrid


14-1104341373
Panom
2004-12-29 20:29
2005.01.16
можно ли создать?