|
|
1
1
解决这个问题的方法是首先将所有表联合在一起,然后将结果PIVOT到列中。或者,也可以选择将每个表中的ISP放在列中,然后将它们联合在一起。我会选择第一个,因为PIVOT的计算成本很高,所以执行一次该步骤是最好的 这看起来像:
我还没有看你的相关问题,但我相信这已经被详细讨论过了,我觉得也需要在这里添加,因为这个UNION解决方案是对实际问题的权宜之计:也就是说,所有这些数据都应该已经在一个表中了。一个正确的模式基本上看起来像这个答案中的子查询的输出。如果你不负责模式或数据采集,这可能是不可能的,但这值得思考。更改模式将降低此查询的复杂性,因为不需要子查询,并且将降低运行此查询的计算成本,因为数据已经正确联合。 |
|
|
2
0
在UNION的每个查询中添加表名作为另一列
要将每个提供者放入一列中,您可以对结果数据进行透视。请参阅 How can I return pivot table output in MySQL? |
|
|
Johnny T · 基于当前值的SQL合并表[重复] 1 年前 |
|
John D · 需要为NULL或NOT NULL的WHERE子句 1 年前 |
|
ojek · 如何对SQL结果进行分组和编号? 1 年前 |
|
|
senek · 如何在PL/SQL中将选择结果(列)放入数组中 1 年前 |
|
|
Sax · 规范化Google表格(第一步) 1 年前 |
|
|
Jatin · 检索卷计数的动态sql抛出错误语法错误[关闭] 1 年前 |
|
|
Andrus · 如何在sql中查找第二个匹配项 1 年前 |