powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Группировка и сложение
10 сообщений из 10, страница 1 из 1
Группировка и сложение
    #39678582
boolbool
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть 4 таблицы из них взяты данные, не получается сгруппировать похожие Invoice_No и сложить их по Qty...

select SalOutD.Invoice_No, Qty from SalOutD, SalOutH
where SalOutH.Doc_Type = 4 and SalOutD.Invoice_No = SalOutH.Invoice_No
UNION
select SalInD.Invoice_No, Qty from SalInD, SalInH
where SalInH.Doc_Type = 4 and SalInD.Invoice_No = SalInH.Invoice_No

/* выдаёт все нужные Invoice_No и такие же */

select SalOutD.Invoice_No from
(
select SalOutD.Invoice_No, Qty from SalOutD, SalOutH
where SalOutH.Doc_Type = 4 and SalOutD.Invoice_No = SalOutH.Invoice_No
UNION
select SalInD.Invoice_No, Qty from SalInD, SalInH
where SalInH.Doc_Type = 4 and SalInD.Invoice_No = SalInH.Invoice_No
) SalOutD, SalOutH, SalInD, SalInH
group by SalOutD.Invoice_No

/* могу их сгруппировать, но не могу правильно сложить строки Qty */
Подскажите, пожалуйста, как это правильно сделать ?
...
Рейтинг: 0 / 0
Группировка и сложение
    #39678589
londinium
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boolbool,
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
select X.Invoice_No,SUM(X.QTY) AS Summ  from
(
select SalOutD.Invoice_No, Qty from SalOutD, SalOutH
where SalOutH.Doc_Type = 4 and SalOutD.Invoice_No = SalOutH.Invoice_No
UNION
select SalInD.Invoice_No, Qty from SalInD, SalInH
where SalInH.Doc_Type = 4 and SalInD.Invoice_No = SalInH.Invoice_No
) X
GROUP BY X.Invoice_No



?
...
Рейтинг: 0 / 0
Группировка и сложение
    #39678596
boolbool
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
londinium,

ооо, супер, а как получить тогда разницу между двумя Qty?
...
Рейтинг: 0 / 0
Группировка и сложение
    #39678599
boolbool
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
londinium,

SalInD.Qty - SalOutD.Qty пробовал так, но получалась полная фигня
...
Рейтинг: 0 / 0
Группировка и сложение
    #39678608
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boolboolа как получить тогда разницу между двумя Qty?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
select X.Invoice_No,SUM(X.QTY) AS Summ  from
(
select SalOutD.Invoice_No, -Qty from SalOutD, SalOutH
where SalOutH.Doc_Type = 4 and SalOutD.Invoice_No = SalOutH.Invoice_No
union all
select SalInD.Invoice_No, Qty from SalInD, SalInH
where SalInH.Doc_Type = 4 and SalInD.Invoice_No = SalInH.Invoice_No
) X(Invoice_No, Qty)
GROUP BY X.Invoice_No
...
Рейтинг: 0 / 0
Группировка и сложение
    #39678609
londinium
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автора как получить тогда разницу между двумя Qty?

можно попробовать что-то в таком духе
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
select X.Invoice_No,SUM(X.SOLDOUT) AS SOLDOUT,SUM(X.SoldIn)SOLDIN  from
(
select SalOutD.Invoice_No, Qty AS SoldOut,0 AS SoldIn  
FROM SalOutD  OD
JOIN SalOutH   OH ON OD.INVOICE_NO=OH.INVOICE_NO
WHERE OH.Doc_Type = 4 

UNION ALL

select SalInD.Invoice_No, 0 AS SoldOut,Qty as SoldIn 
FROM SalInD IND
JOIN SalInH  INH 
ON IND.Invoice_No=INH.Invoice_No
WHERE INH.Doc_Type = 4 
) X
GROUP BY X.Invoice_No
...
Рейтинг: 0 / 0
Группировка и сложение
    #39678610
boolbool
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо большое, помогли
...
Рейтинг: 0 / 0
Группировка и сложение
    #39678611
boolbool
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
invm,

только ещё один вопрос, осталось разобраться с этим, X(Invoice_No, Qty) - что это? темп таблица с двумя столбцами ?
...
Рейтинг: 0 / 0
Группировка и сложение
    #39678615
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boolboolX(Invoice_No, Qty) - что это? https://docs.microsoft.com/ru-ru/sql/t-sql/queries/from-transact-sql?view=sql-server-2017 - см. derived_table
...
Рейтинг: 0 / 0
Группировка и сложение
    #39678617
boolbool
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
invm,

спасибо :)
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Группировка и сложение
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]