Вниз
Скачать: CL | DM;

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

← →
Kley   (2006-09-10 20:13) [0]

помогите плиз с sql запросом. Есть две таблицы receive.db и Numdoc.db связанные между собой один ко многим по полям receive.nom
и numdoc.nom (одной записи из табл receive соответствует несколько записей из табл.numdoc).
Делаю так:
SELECT DISTINCT AA.nom,
BB.num as "АДВ-6",
"" as"АДВ-10"
FROM RECEIVE AA,  NUMDOC BB
where  AA.NOM=BB.NOM and bb.kodfdoc=8 and aa.raion=12
union
SELECT DISTINCT AA.nom,
"" as "АДВ-6",
BB.num as"АДВ-10"
FROM RECEIVE AA,  NUMDOC BB
where  AA.NOM=BB.NOM and bb.kodfdoc=31 and aa.raion=12
ПОЛУЧАЕТСЯ СЛЕДУЮЩЕЕ:
_______________________
|Nom  |АДВ-6  | АДВ-10 |
------------------------
|41037|   1   |        |
------------------------  
|41037|       |    1   |
------------------------

А НУЖНО ЧТОБЫ БЫЛО ТАК:

|Nom  |АДВ-6  | АДВ-10 |
------------------------
|41037|   1   |    1   |
------------------------  
КАК СДЕЛАТЬ?


← →
VitGun ©   (2006-09-10 20:21) [1]

ИМХО:

GROUP BY AA.Nom

и не забудь добавить SUM(BB.Nom)


← →
Kley   (2006-09-10 20:44) [2]

[1]
ты имеешь ввиду так?
SELECT DISTINCT
AA.nom,
sum (bb.nom),
BB.num as "АДВ-6",
"" as"АДВ-10"
FROM RECEIVE AA,  NUMDOC BB
where  AA.NOM=BB.NOM and bb.kodfdoc=8 and aa.raion=12
group by aa.nom,bb.num
union
SELECT DISTINCT AA.nom,
sum (bb.nom),
"" as "АДВ-6",
BB.num as"АДВ-10"
FROM RECEIVE AA,  NUMDOC BB
where  AA.NOM=BB.NOM and bb.kodfdoc=31 and aa.raion=12
group by aa.nom,bb.num
тоже самое получается. не пойму для чего Sum (bb.nom)


← →
VitGun ©   (2006-09-10 23:10) [3]

нет.

не GROUP BY aa.nom,bb.nom, а

GROUP BY aa.nom

т.е тебе сгруппировать записи надо по одному только полю.

а sum нужен для суммирования значений...

а то в выборке будет вот так:

|Nom  |АДВ-6  | АДВ-10 |
------------------------
|41037|   1   |        |
------------------------  
|41037|       |    1   |
------------------------  
|41037|   1   |        |
------------------------

и с GROUP BY получишь

|Nom  |АДВ-6  | АДВ-10 |
------------------------
|41037|   1      |    1   |
------------------------

а должно быть

|Nom  |АДВ-6  | АДВ-10 |
------------------------
|41037|   2      |    1   |
------------------------



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

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



Память: 0.45 MB
Время: 0.026 c
1-1158916637
MixAnOL
2006-09-22 13:17
2006.11.05
Печать на термопринтере через RS232


2-1161358396
Ezorcist
2006-10-20 19:33
2006.11.05
Высота трея?


2-1161313717
КлЯкСа
2006-10-20 07:08
2006.11.05
Как активизировать всплывающие подсказки при написании кода?


5-1142103023
AdmeraL
2006-03-11 21:50
2006.11.05
Значения Default


5-1142499037
Arm79
2006-03-16 11:50
2006.11.05
ошибка при обращении к Parameters наследника TADOStoredProc




   Наверх