Главная страница
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.075 c
14-1104022330
Johnmen
2004-12-26 03:52
2005.01.16
Открытое письмо


3-1102851825
aglar
2004-12-12 14:43
2005.01.16
Нумерация строк в DBGrid


4-1101629021
Tack
2004-11-28 11:03
2005.01.16
Браузер по умолчанию, IE, Opera и URL для закачки


11-1085075514
Terminus
2004-05-20 21:51
2005.01.16
Еще о KOLTabControl


3-1103178250
galexis
2004-12-16 09:24
2005.01.16
Не могу произвести выгрузку в Excel большое количество записей.