需要帮助将透视表的两个SQL选择组合为一个吗

需要帮助将透视表的两个SQL选择组合为一个吗,sql,pivot-table,Sql,Pivot Table,我需要帮助将两个表选择合并为一个透视表 表A列:州、城市、设备、统计A、统计B 设备列有多个列表 表B列:州、城市、设备、统计 设备列仅将“所有设备”作为条目 输入示例: A: CA, San Fran, A, 1, 2 CA, San Jose, A, 3, 5 CA, San Fran, All Devices, 66 CA, San Jose, All Devices, 77 CA, San Fran, A, 1, 2, null CA, San Jose, A, 3, 5,

我需要帮助将两个表选择合并为一个透视表

表A列:州、城市、设备、统计A、统计B

  • 设备列有多个列表
表B列:州、城市、设备、统计

  • 设备列仅将“所有设备”作为条目
输入示例:

A:

CA, San Fran, A, 1, 2
CA, San Jose, A, 3, 5
CA, San Fran, All Devices, 66
CA, San Jose, All Devices, 77
CA, San Fran, A, 1, 2, null
CA, San Jose, A, 3, 5, null
CA, San Fran, All Devices, null, null, 66
CA, San Jose, All Devices, null, null, 77
B:

CA, San Fran, A, 1, 2
CA, San Jose, A, 3, 5
CA, San Fran, All Devices, 66
CA, San Jose, All Devices, 77
CA, San Fran, A, 1, 2, null
CA, San Jose, A, 3, 5, null
CA, San Fran, All Devices, null, null, 66
CA, San Jose, All Devices, null, null, 77
结果:

CA, San Fran, A, 1, 2
CA, San Jose, A, 3, 5
CA, San Fran, All Devices, 66
CA, San Jose, All Devices, 77
CA, San Fran, A, 1, 2, null
CA, San Jose, A, 3, 5, null
CA, San Fran, All Devices, null, null, 66
CA, San Jose, All Devices, null, null, 77

这里的想法是,当我创建透视表并将设备设置为列名时,我会得到列A和所有设备,在这些列中,我只是将一些子列(如stat_A和stat_b)隐藏在“所有设备”列下。从上面的示例中,只有2行(不包括按州划分的行)将显示为表将与数据透视表的行相加的城市-州。

您可以使用
union
实现这一点

SELECT State, City, Device, Stat_A, Stat_B, null FROM A UNION
SELECT State, City, Device, null, null, Stat_C FROM B;

了解您正在运行此查询的数据库引擎是很有用的,但这应该是可行的。

您可以使用
union
实现这一点

SELECT State, City, Device, Stat_A, Stat_B, null FROM A UNION
SELECT State, City, Device, null, null, Stat_C FROM B;

了解您正在运行此查询的数据库引擎是很有用的,但这应该会起作用。

通过ODBC从Oracle SQL server中进行选择。请注意,重复的答案表明,使用Oracle时,您需要在联合体的第一部分中的
null
之后使用
作为Stat\u C
,第二部分中的
null
s之后也是如此。通过ODBC从Oracle SQL server中进行选择。请注意,重复的答案表明,使用Oracle时,您需要在联合体的第一部分中
null
之后以及第二部分中的
null
s之后使用
AS Stat_C