计算来自多个表的数据

阿什拉夫

我有3张桌子T1,T2,T3。他们每个人都有彼此的关系。

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

SELECT     T1.T1_Serno, T2.T2_Serno, T3.T3_Serno, T1.T1,COUNT( T3.T3_Serno) as Count_1, T2.T2, T3.T3, T3.Quantity
FROM         T1 INNER JOIN
                      T2 ON T1.T1_Serno = T2.T1_Serno INNER JOIN
                      T3 ON T2.T2_Serno = T3.T2_Serno
GROUP BY T1.T1_Serno, T2.T2_Serno, T3.T3_Serno, T1.T1, T2.T2, T3.T3, T3.Quantity

结果是

在此处输入图片说明

我希望获得Count_1来显示多少T3,让Count_2拥有T3的相对数量Count。我期望得到这样的结果

   T2    T3      Count_1 Count_2
    Apple Apple1    3    80
    Apple Apple2    3    80
    Apple Apple3    3    80
    -------
    Google Google1  1    40
    ------
    Nokia Nokia1    1    15

这样,当我将其放入网格中时,我可以将“计数”用作页脚。像这样,但每个组的总数之下。

在此处输入图片说明

gh9
SELECT t2.t2,t3.t3,sum(t3.Quantity)
FROM T2 AS T2
INNER JOIN T3 AS T3 ON t3.t2_serno = t2.t2_serno
GROUP BY t2.t2,t3.t3

本质上,您想按1个主要分组(t2)和1个次要分组(t3)对事物进行分组。因此,当您执行sql server时group by,它会在分组内创建分组(如果您有多个分组元素)。最左侧的分组元素将是主要分组,从左到右的读取将是子分组。那就是我的方式GROUP By t2.t2,t3.t3

了解了您希望如何对其进行分组后,便查看了列数。您想要t3中的数量列的总和。由于t3.t3是t2.t2的子组,因此sql server通过t3.t3子组将列聚合应用于所有行,该子组已经按t2.t2分组进行了分组。

TL; DR:sql server中的group by子句从左到右先行,用in分组创建分组。如果将聚合应用于子组中的列,则该聚合将神奇地(如果您了解sql引擎,则很合逻辑)可为子组中的每个项目工作,并从每个新的子组实例重新开始。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

计算来自多个表的联接

来自分类Dev

计算来自多个表的关联

来自分类Dev

计算来自多个表的分组记录

来自分类Dev

JavaScript:计算来自多个按钮的按钮点击总数?

来自分类Dev

来自多个表的SQL数据

来自分类Dev

来自多个表的PHP SELECT数据

来自分类Dev

Excel - 合并来自多个表的数据

来自分类Dev

SQL View问题:来自多个表的条件计算列

来自分类Dev

显示来自多个数据库表的数据

来自分类Dev

计算来自HTML表的过滤结果

来自分类Dev

来自多个表的求和?

来自分类Dev

来自多个表的图表

来自分类Dev

数据库结构-来自多个表的项目

来自分类Dev

如何合并和显示来自多个表的数据

来自分类Dev

来自多个列的数据透视表值

来自分类Dev

查询来自多个表的所有数据

来自分类Dev

UNION来自多个数据库的表

来自分类Dev

遍历数组,来自多个表的数据

来自分类Dev

连接来自多个mysql表的数据

来自分类Dev

来自多个表的数据库查询

来自分类Dev

VBA - 来自多个工作表的源数据

来自分类Dev

在红移中更新来自多个表的数据

来自分类Dev

SQL 聚合来自多个表的数据并对指定的列求和

来自分类Dev

计算来自外部源的数据

来自分类Dev

来自多个表 MySQL 的多个 Where OR

来自分类Dev

包含来自多个数据库表的数据的单个表

来自分类Dev

xarray计算来自多年netcdf的每月平均值

来自分类Dev

Rails来自多个表的单个结果

来自分类Dev

来自多个表的sql count()