Sql 将两个不同表中的两列相乘
我试图将两个不同表中的两列求和相乘,但结果总是不一样。我真正想要的是HoldingReport表中的共享只来自一个不同的CustomerServiceId。例如,如果CustomerServiceId=2,则应将股票与股票的当前价值相乘,并仅对CustomerServiceId=2的列求和 以下是两个表格: 我的问题是:Sql 将两个不同表中的两列相乘,sql,Sql,我试图将两个不同表中的两列求和相乘,但结果总是不一样。我真正想要的是HoldingReport表中的共享只来自一个不同的CustomerServiceId。例如,如果CustomerServiceId=2,则应将股票与股票的当前价值相乘,并仅对CustomerServiceId=2的列求和 以下是两个表格: 我的问题是: SELECT SUM(CurrentValue*Shares) AS TotalAUM FROM Stocks,HoldingReport WHERE CustomerSe
SELECT SUM(CurrentValue*Shares) AS TotalAUM
FROM Stocks,HoldingReport
WHERE CustomerServiceId = '2'
您想要的查询大概是:
SELECT SUM(s.CurrentValue * hr.Shares) AS TotalAUM
FROM Stocks s JOIN
HoldingReport hr
ON s.stocksid = hr.stocksid
WHERE hr.CustomerServiceId = 2;
请注意,
CustomerServiceId
看起来像一个数字,所以我删除了单引号。字符串和日期常量使用单引号。(当然,如果它真的是一个字符串,那么请保留单引号!)为什么您选择不使用正确、明确、标准、可读的JOIN
语法?您能解释一下在这种情况下我将如何使用JOIN语法吗?来自s.CustomerServiceId=h上的stocks内部JOIN HoldingReport h。??