sqlserver-在sql中对两个标量查询进行数学运算



我正在尝试获得两个sum()查询的差异。这就是我试图弄清楚的代码的想法。

(SELECT sum(depamt)  FROM Daily1) - (SELECT sum(depamt)  FROM Daily2)

我尝试声明变量,但无法将选择的结果输入到变量中。有办法做到这一点吗?

只需在前面放一个SELECT

SELECT (SELECT sum(depamt) FROM Daily1) - (SELECT sum(depamt) FROM Daily2);

我更喜欢在FROM子句中放入子查询:

SELECT sum1 - sum2
FROM (SELECT sum(depamt) as sum1 FROM Daily1) x CROSS JOIN
     (SELECT sum(depamt) as sum2 FROM Daily2) y;

这允许您根据需要单独选择每个值。

我尝试声明变量,但无法得到选择变量。有办法做到这一点吗?

使用变量执行

Declare @Sum1 int, @Sum2 int
SELECT  @Sum1 = sum(depamt) FROM Daily1
SELECT  @Sum2 = sum(depamt) FROM Daily2
Select  @Sum1 -  @Sum2

最新更新