Sql server SQL子查询不会求和
这是我正在创建的查询。它可以工作,但会产生结果——一个用于发票,一个用于信用。我只想要一个结果——总数。i、 e.发票减去贷方票据Sql server SQL子查询不会求和,sql-server,sap,Sql Server,Sap,这是我正在创建的查询。它可以工作,但会产生结果——一个用于发票,一个用于信用。我只想要一个结果——总数。i、 e.发票减去贷方票据 SELECT sum ([linetotal]) FROM ( SELECT sum(t1.[LineTotal]) AS 'Linetotal' FROM OINV T0 INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry INNER JOIN OSLP T2 ON T0.SlpCode = T2.SlpCod
SELECT
sum ([linetotal])
FROM
(
SELECT
sum(t1.[LineTotal]) AS 'Linetotal'
FROM OINV T0
INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry
INNER JOIN OSLP T2 ON T0.SlpCode = T2.SlpCode
WHERE t0.taxdate >= '20170101' and t0.taxdate <= '20170131' and t0.[canceled] ='n' and T0.[SlpCODE] = '4'
union all
SELECT
sum(-T1.[LineTotal] ) AS 'Linetotal'
FROM ORIN T0
INNER JOIN RIN1 T1 ON T0.DocEntry = T1.DocEntry
INNER JOIN OSLP T2 ON T0.SlpCode = T2.SlpCode
WHERE t0.taxdate >= '20170101' and t0.taxdate <= '20170131' and t0.[canceled] ='n' and T0.[SlpCODE] = '4'
)
as a
group by a.linetotal
尝试删除最后一行:group by a.linetotal,因为它将它们分开,因为它们不相等您必须删除group by
SELECT
sum ([linetotal])
FROM
(
SELECT
sum(t1.[LineTotal]) AS 'Linetotal'
FROM OINV T0
INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry
INNER JOIN OSLP T2 ON T0.SlpCode = T2.SlpCode
WHERE t0.taxdate >= '20170101' and t0.taxdate <= '20170131' and t0.[canceled] ='n' and T0.[SlpCODE] = '4'
union all
SELECT
sum(-T1.[LineTotal] ) AS 'Linetotal'
FROM ORIN T0
INNER JOIN RIN1 T1 ON T0.DocEntry = T1.DocEntry
INNER JOIN OSLP T2 ON T0.SlpCode = T2.SlpCode
WHERE t0.taxdate >= '20170101' and t0.taxdate <= '20170131' and t0.[canceled] ='n' and T0.[SlpCODE] = '4'
)
as a
显示您当前的成绩和预期成绩。请验证答案,谢谢。如果答案有帮助,请不要忘记该奖项。在那些日子里,该奖项经常被遗忘:/