【问题标题】:How to transpose memsql data rows into columns如何将 memsql 数据行转置为列
【发布时间】:2019-09-04 15:46:37
【问题描述】:

我正在寻找重新排序一些数据,这是当前设置

Account  | Delay | Value | 
ACCOUNT1 | 0     | 5     |
ACCOUNT1 | 100   | 10    |
ACCOUNT1 | 200   | 10    |
ACCOUNT1 | 0     | 8     |
ACCOUNT1 | 100   | 12    |
ACCOUNT1 | 200   | 5     |
ACCOUNT1 | 0     | 10    |
ACCOUNT1 | 100   | 15    |
ACCOUNT1 | 200   | 20    |
ACCOUNT2 | 0     | 30    |
ACCOUNT2 | 100   | 40    |
ACCOUNT2 | 200   | 25    |

然后通过帐户/延迟组合将其输出为值的总和,如下所示

     | 0    | 100   | 200
ACCOUNT1 | 23   | 37    | 35
ACCOUNT2 | 30   | 40    | 25

我认为这可以通过 MEMSQL 案例 (https://www.w3schools.com/sql/sql_case.asp) 完成,但我无法让它工作

SELECT ACCOUNT,
    CASE WHEN DELAY_IN_MILLIS = '0' THEN sum(VALUE) END "0",
    CASE WHEN DELAY_IN_MILLIS = '100' THEN sum(VALUE) END "100",
    CASE WHEN DELAY_IN_MILLIS = '200' THEN sum(VALUE) END "200",
END AS text
FROM TABLE

有人可以帮忙吗?

【问题讨论】:

    标签: singlestore


    【解决方案1】:

    尝试类似:

    sum(if(DELAY_IN_MILLIS = 0, VALUE, 0)),
    sum(if(DELAY_IN_MILLIS = 100, VALUE, 0)),
    ...
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-03-19
      • 1970-01-01
      • 1970-01-01
      • 2020-10-10
      • 1970-01-01
      • 1970-01-01
      • 2021-03-27
      相关资源
      最近更新 更多