Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/86.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_Db2 - Fatal编程技术网

Sql 以一个领域为中心?

Sql 以一个领域为中心?,sql,db2,Sql,Db2,我使用IBMDB2SQL 以下是我当前的查询: select EXSHPE as "Shape", EXDLVY as "Delivery", Sum(Case When EXSURF = 'Print' Then EXRLTO Else 0 End) As Retail_Print, Sum(Case When EXSURF = 'Pattern' Then EXRLTO Else 0 End) as Retail_Pattern, Sum(Case When EXSURF =

我使用IBMDB2SQL

以下是我当前的查询:

select 
EXSHPE as "Shape",
EXDLVY as "Delivery",

  Sum(Case When EXSURF = 'Print' Then EXRLTO Else 0 End) As Retail_Print,
  Sum(Case When EXSURF = 'Pattern' Then EXRLTO Else 0 End) as Retail_Pattern,
  Sum(Case When EXSURF = 'Solid' Then EXRLTO Else 0 End) As Retail_Solid,
  Sum(Case When EXSURF = 'UnknownA' Then EXRLTO Else 0 End) as Retail_UnknownA,
  Sum(Case When EXSURF = 'UnknownB' Then EXRLTO Else 0 End) As Retail_UnknownB,
  Sum(Case When EXSURF = 'UnknownC' Then EXRLTO Else 0 End) as Retail_UnknownC,

  Sum(Case When EXSURF = 'Print' Then EXWHLO Else 0 End) As Wholesale_Print,
  Sum(Case When EXSURF = 'Pattern' Then EXWHLO Else 0 End) as Wholesale_Pattern,
  Sum(Case When EXSURF = 'Solid' Then EXWHLO Else 0 End) As Wholesale_Solid,
  Sum(Case When EXSURF = 'UnknownA' Then EXWHLO Else 0 End) as Wholesale_UnknownA,
  Sum(Case When EXSURF = 'UnknownB' Then EXWHLO Else 0 End) As Wholesale_UnknownB,
  Sum(Case When EXSURF = 'UnknownC' Then EXWHLO Else 0 End) as Wholesale_UnknownC,

  Sum(Case When EXSURF = 'Print' Then EXUNTO Else 0 End) As Units_Print,
  Sum(Case When EXSURF = 'Pattern' Then EXUNTO Else 0 End) as Units_Pattern,
  Sum(Case When EXSURF = 'Solid' Then EXUNTO Else 0 End) As Units_Solid,
  Sum(Case When EXSURF = 'UnknownA' Then EXUNTO Else 0 End) as Units_UnknownA,
  Sum(Case When EXSURF = 'UnknownB' Then EXUNTO Else 0 End) As Units_UnknownB,
  Sum(Case When EXSURF = 'UnknownC' Then EXUNTO Else 0 End) as Units_UnknownC,

  Sum(Case When EXSURF = 'Print' Then EXAURA Else 0 End) As Actual_AUR_Print,
  Sum(Case When EXSURF = 'Pattern' Then EXAURA Else 0 End) as Actual_AUR_Pattern,
  Sum(Case When EXSURF = 'Solid' Then EXAURA Else 0 End) As Actual_AUR_Solid,
  Sum(Case When EXSURF = 'UnknownA' Then EXAURA Else 0 End) as Actual_AUR_UnknownA,
  Sum(Case When EXSURF = 'UnknownB' Then EXAURA Else 0 End) As Actual_AUR_UnknownB,
  Sum(Case When EXSURF = 'UnknownC' Then EXAURA Else 0 End) as Actual_AUR_UnknownC,

  Sum(Case When EXSURF = 'Print' Then EXMERA Else 0 End) As Merch_AUR_Print,
  Sum(Case When EXSURF = 'Pattern' Then EXMERA Else 0 End) as Merch_AUR_Pattern,
  Sum(Case When EXSURF = 'Solid' Then EXMERA Else 0 End) As Merch_AUR_Solid,
  Sum(Case When EXSURF = 'UnknownA' Then EXMERA Else 0 End) as Merch_AUR_UnknownA,
  Sum(Case When EXSURF = 'UnknownB' Then EXMERA Else 0 End) As Merch_AUR_UnknownB,
  Sum(Case When EXSURF = 'UnknownC' Then EXMERA Else 0 End) as Merch_AUR_UnknownC

from EXOWMSPD
Where (EXCO || '/' || EXDIV)  = ?
Group By
  EXSHPE,
  EXDLVY
Order By
  EXSHPE DESC,
  EXDLVY DESC
数据库如下所示:

我需要旋转曲面,但要动态。 问题是,我只知道前3个曲面描述。但我需要准备最多6分钟

有没有一种方法可以动态地旋转它来抓取前6个曲面

例如

RETAIL_DOLLARS_1   10.00
RETAIL_DOLLARS_2   20.00
RETAIL_DOLLARS_3   50.00
RETAIL_DOLLARS_4   0.00
RETAIL_DOLLARS_5   0.00
RETAIL_DOLLARS_6   0.00
在本例中,找到了3个曲面的数据,我希望用0填充其他3个曲面

我用它来制作一个报告,我将隐藏那些表面描述等于“”的列

有办法做到这一点吗


谢谢

如果您想在各个维度上对数据进行多维数据集,请尝试

 GROUP BY CUBE

子句

DB2的哪个版本?我知道iSeries没有
PIVOT()
-类型的函数-您必须手动对其进行透视。但是,您当前的
WHERE
子句将执行得非常糟糕(因为您不能在
EXCO
/
EXDIV
上使用任何索引)-最好在程序代码中拆分主机变量,并分别比较字段。