Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 将事务数据透视到二进制格式表中_Sql_Postgresql_Pivot - Fatal编程技术网

Sql 将事务数据透视到二进制格式表中

Sql 将事务数据透视到二进制格式表中,sql,postgresql,pivot,Sql,Postgresql,Pivot,我每天有一个事务表,每天可以有1到多个事务。现在,我想以这样一种方式对其进行转换,即如果事务表中没有当天的记录,则每个客户获得一条记录,其中包含一系列0,如果当天有记录,则为1 如何在SQL或Postgres中实现这一点 例如: 转换此事务表: Cust Date 123 2/3/2015 123 4/3/2015 456 1/3/2015 下表: Cust 1/3/2015 2/3/2015 3/3/2015 4/3/2015 123

我每天有一个事务表,每天可以有1到多个事务。现在,我想以这样一种方式对其进行转换,即如果事务表中没有当天的记录,则每个客户获得一条记录,其中包含一系列0,如果当天有记录,则为1

如何在SQL或Postgres中实现这一点

例如:

转换此事务表:

Cust   Date  
123    2/3/2015  
123    4/3/2015  
456    1/3/2015  
下表:

Cust   1/3/2015   2/3/2015   3/3/2015   4/3/2015  
123       0          1          0          1  
456       1          0          0          0  
根据使用交叉表的建议,我提出了以下SQL:

SELECT *
FROM CROSSTAB12 (
   'SELECT CALLING_ISDN AS A_PARTY, DATE(CALL_STA_TIME), 1 AS VALUE
   FROM CDRVMS_ADMIN.AW_CDRICC_SAMPLE
   ORDER BY 1,2');
这会产生以下错误消息我正在Netezza机器上工作:

在字符26处发现错误42000,需要关键字


我正在使用此文档:

感谢您对带有\u no \u名称的\u horse\u进行格式更改。我也愿意接受改变这个问题标题的建议,我不是以英语为母语的人,这可能无法很好地解释我想要得到的答案。对不起!您可以使用交叉表来实现这一点:这里可以找到数据透视表/交叉表的好例子: