Sql 将两个不同表中的两列相乘

Sql 将两个不同表中的两列相乘,sql,Sql,我试图将两个不同表中的两列求和相乘,但结果总是不一样。我真正想要的是HoldingReport表中的共享只来自一个不同的CustomerServiceId。例如,如果CustomerServiceId=2,则应将股票与股票的当前价值相乘,并仅对CustomerServiceId=2的列求和 以下是两个表格: 我的问题是: SELECT SUM(CurrentValue*Shares) AS TotalAUM FROM Stocks,HoldingReport WHERE CustomerSe

我试图将两个不同表中的两列求和相乘,但结果总是不一样。我真正想要的是HoldingReport表中的共享只来自一个不同的CustomerServiceId。例如,如果CustomerServiceId=2,则应将股票与股票的当前价值相乘,并仅对CustomerServiceId=2的列求和

以下是两个表格:

我的问题是:

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。??