Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
14-1104120730
Чеширский_Кот
2004-12-27 07:12
2005.01.16
"И скучно, и грустно, и некому руку подать..."


14-1103796920
WondeRu
2004-12-23 13:15
2005.01.16
Выявление самого четкого изображения!


1-1104294010
msgipss
2004-12-29 07:20
2005.01.16
Создать несколько сервисов из одного


1-1103925871
pika
2004-12-25 01:04
2005.01.16
Ошибка !!!


14-1104381927
Чеширский_Кот
2004-12-30 07:45
2005.01.16
Почему, по-вашему...




   Наверх