【发布时间】:2018-07-05 18:23:23
【问题描述】:
我是 sql 新手,正在尝试将三个不同表中的列值合并到 DB2 Warehouse on Cloud 中的一行。每个表只包含一行和唯一的列名。所以我想要的只是将这三行加入它们的原始列名。
每个表都是由如下所示的语句构建的:
SELECT SUM(FUEL_TEMP.FUEL_MLAD_VALUE) AS FUEL
FROM
(SELECT ML_ANOMALY_DETECTION.MLAD_METRIC AS MLAD_METRIC, ML_ANOMALY_DETECTION.MLAD_VALUE AS FUEL_MLAD_VALUE, ML_ANOMALY_DETECTION.TAG_NAME AS TAG_NAME, ML_ANOMALY_DETECTION.DATETIME AS DATETIME, DATA_CONFIG.SYSTEM_NAME AS SYSTEM_NAME
FROM ML_ANOMALY_DETECTION
INNER JOIN DATA_CONFIG ON
(ML_ANOMALY_DETECTION.TAG_NAME =DATA_CONFIG.TAG_NAME AND
DATA_CONFIG.SYSTEM_NAME = 'FUEL')
WHERE ML_ANOMALY_DETECTION.MLAD_METRIC = 'IFOREST_SCORE'
AND ML_ANOMALY_DETECTION.DATETIME >= (CURRENT DATE - 9 DAYS)
ORDER BY DATETIME DESC)
AS FUEL_TEMP
我尝试过 JOIN、INNER JOIN、UNION/UNION ALL,但无法正常工作。我该怎么做?
【问题讨论】:
-
阅读stackoverflow.com/help/mcve 是询问问题的良好开端。
-
上面的查询是1表查询有效的例子,你基本上需要这样做3次,然后变成1个视图?
-
是的,它是一个表查询,我想成为结果表中的列之一。所以是的,我想将其中三个组合到一个三列一行的表格中。 @Crezzer7
-
好的,这3个表叫什么,你想要什么列?
-
所以,你有 3 个表格,每个数字有 1 行。你想总结所有这 3 个值。您可以尝试将其合并到具有 3 行的单个表中,然后对所有值求和。表1联合所有表2