【问题标题】:Multiple Column Summary in TeradataTeradata 中的多列摘要
【发布时间】:2016-01-02 00:11:31
【问题描述】:

这里的第一个问题,希望你能帮忙。

我有一个超过 75 列的表,首先是一个 ID,其余的只有 1 个或空标志

例子:

UNIQUE_IDENT, SERVICE_FLAG, P1_PREFA, P2_PREFB, etc etc >> P75_PREF75
987651651,    1,            1,        1,                   1

我想在不为所有 75 列编写 sum 语句的情况下对每一列求和,我已经看到它在 SAS 中作为 Proc Summary 完成

Service_Flag =1 用于此实例中的所有用户

proc summary data= TranzSeg_Permission ;
class SERVICE_FLAG;
var _:;
output out=segments_rollup (where=(_TYPE_=1) drop= _FREQ_) sum=;
run;

一定有简单的方法吗?

【问题讨论】:

  • 谢谢,真的很有帮助...

标签: sql count teradata summary rollup


【解决方案1】:

您可以使用条件聚合来做到这一点,但您必须列出每一列:

select unique_ident,
       min(service_flag) as service_flag,
       min(p1_prefa) as p1_prefa,
       . . .
from TranzSeg_Permission
group by unique_ident;

我正在使用min(),因为您说带有 ident 的“所有”行的服务标志 = 1。

您可以通过获取列名并使用 SQL 语句或电子表格来生成代码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-07
    • 2019-09-16
    • 1970-01-01
    • 1970-01-01
    • 2017-02-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多