下面是表(新用户,无法张贴图片还):需要帮助从Excel数组公式将SQL语句组合
我一直使用的Excel,但我由于数据集较大,因此切换到SQL。为了在Excel中填充CELL G2,我会使用类似这样的东西:
=SUM((A2:A8=E2)*(B2:B8))
在Excel for Cell G2中给出了一个值141。
我想出了如何让这个工作在SQL中,但我不完全明白为什么这会起作用。以下是我在SQL中使用的内容:
SET Table2.total_units_purchased = Table1.some_number
FROM Table2 INNER JOIN
(
SELECT Table1.item
, SUM(Table1.units_purchased) AS some_number
FROM Table1
GROUP BY Table1.item
) Table1
ON Table2.item = Table1.item
在some_number之前是否需要“AS”?即使省略“AS”,这仍然有效。
我在这里错过了什么吗?最后一行代码中的表的顺序是否重要?
感谢您的任何帮助。
作为这种情况下的AS是一个别名,虽然不错的形式,它不是必需的。 ON子句的顺序无关紧要。 – xQbert 2012-02-05 22:15:53
我对“AS”有点困惑,因为我最初用它来标记查询结果中的一列。我不知道它可以用来分配这样的值。 – eek142 2012-02-05 22:21:10
您的查询完好无损。首先,对购买的单位进行总结(运行内部查询以查看其输出),然后将其视为派生表(带有别名“Table1”)并加入它以执行更新。 – ErikE 2012-02-05 23:25:05