Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.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
通过合并和分组将Pentaho迁移到SQL Server数据透视表_Sql_Sql Server 2012_Pivot_Pentaho - Fatal编程技术网

通过合并和分组将Pentaho迁移到SQL Server数据透视表

通过合并和分组将Pentaho迁移到SQL Server数据透视表,sql,sql-server-2012,pivot,pentaho,Sql,Sql Server 2012,Pivot,Pentaho,我有一个Pentaho工作,在这方面,我们正在使用pivot表对表进行一些规范化。我想把它改成SQL server。 我的SQL server具有以下数据: Rep_Create_Date InventoryID Beg_Bal_Pennies Beg_Bal_Nickels Beg_Bal_Dimes Beg_Bal_Quaters Beg_Bal_Halves Beg_Bal_Dollar Beg_Bal_Loose Beg_Bal_Ones Beg_Bal_Twos

我有一个Pentaho工作,在这方面,我们正在使用pivot表对表进行一些规范化。我想把它改成SQL server。 我的SQL server具有以下数据:

Rep_Create_Date InventoryID Beg_Bal_Pennies  Beg_Bal_Nickels  Beg_Bal_Dimes  Beg_Bal_Quaters    Beg_Bal_Halves  Beg_Bal_Dollar  Beg_Bal_Loose   Beg_Bal_Ones Beg_Bal_Twos  Beg_Bal_Fives  Beg_Bal_Tens Beg_Bal_Twenties Beg_Bal_Fifties Beg_Bal_Hundreds Inb_Bulk_Pennies  Inb_Bulk_Nickels  Inb_Bulk_Dimes  Inb_Bulk_Quaters   Inb_Bulk_Halves Inb_Bulk_Dollar Inb_Bulk_Loose  Inb_Bulk_Ones Inb_Bulk_Twos  Inb_Bulk_Fives  Inb_Bulk_Tens Inb_Bulk_Twenties Inb_Bulk_Fifties Inb_Bulk_Hundreds  Out_Bulk_Pennies  Out_Bulk_Nickels  Out_Bulk_Dimes  Out_Bulk_Quaters   Out_Bulk_Halves Out_Bulk_Dollar Out_Bulk_Loose  Out_Bulk_Ones Out_Bulk_Twos  Out_Bulk_Fives  Out_Bulk_Tens Out_Bulk_Twenties Out_Bulk_Fifties Out_Bulk_Hundreds   Out_Pack_Pennies  Out_Pack_Nickels  Out_Pack_Dimes  Out_Pack_Quaters  Out_Pack_Halves Out_Pack_Dollar Out_Pack_Loose  Out_Pack_Ones Out_Pack_Twos  Out_Pack_Fives  Out_Pack_Tens Out_Pack_Twenties Out_Pack_Fifties Out_Pack_Hundreds  Inv_Tran_Pennies  Inv_Tran_Nickels  Inv_Tran_Dimes  Inv_Tran_Quaters   Inv_Tran_Halves Inv_Tran_Dollar Inv_Tran_Loose  Inv_Tran_Ones Inv_Tran_Twos  Inv_Tran_Fives  Inv_Tran_Tens Inv_Tran_Twenties Inv_Tran_Fifties Inv_Tran_Hundreds Inv_Adj_Pennies  Inv_Adj_Nickels  Inv_Adj_Dimes  Inv_Adj_Quaters    Inv_Adj_Halves  Inv_Adj_Dollar  Inv_Adj_Loose   Inv_Adj_Ones Inv_Adj_Twos  Inv_Adj_Fives  Inv_Adj_Tens Inv_Adj_Twenties Inv_Adj_Fifties Inv_Adj_Hundreds    Phy_Bal_Pennies      Phy_Bal_Nickels  Phy_Bal_Dimes  Phy_Bal_Quaters    Phy_Bal_Halves  Phy_Bal_Dollar  Phy_Bal_Loose   Phy_Bal_Ones Phy_Bal_Twos  Phy_Bal_Fives    Phy_Bal_Tens    Phy_Bal_Twenties    Phy_Bal_Fifties  Phy_Bal_Hundreds    
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
20160907         014            0.00             0.00             0.00           0.00               0.00            0.00            0.00            0.00         0.00           0.00          0.00          354060.00       0.00            0.00         0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           41900.00              0.00            0.00           0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           00.00             0.00            0.00               0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           0.00                  0.00            0.00           0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           0.00                  0.00            0.00           0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           0.00      0.00            0.00               0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           395960.00                 0.00            0.00                                       
20160907         018            0.00             0.00             0.00           0.00               0.00            0.00            0.00            0.00         0.00           0.00          0.00          919600.00       0.00            0.00         0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           347060.00             0.00            0.00           0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           00.00             0.00            0.00               0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           304000.00             0.00            0.00           0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           0.00                  0.00            0.00           0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           0.00      0.00            0.00               0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           962660.00                 0.00            0.00                                              
20160907         050            0.00             0.00             0.00           0.00               0.00            0.00            0.00            0.00         0.00           0.00          0.00          970300.00       0.00            0.00         0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           13860.00              0.00            0.00           0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           00.00             0.00            0.00               0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           130000.00             0.00            0.00           0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           0.00                  0.00            0.00           0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           0.00      0.00            0.00               0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           85416000                  0.00            0.00                                          
20160907         073            0.00             0.00             0.00           0.00               0.00            0.00            0.00            0.00         0.00           0.00          0.00          1517360.00      0.00            0.00         0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           494860.00             0.00            0.00           0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           00.00             0.00            0.00               0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           606000.00             0.00            0.00           0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           0.00                  0.00            0.00           0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           0.00      0.00            0.00               0.00               0.00             0.00            0.00               0.00            0.00            0.00            0.00          0.00           0.00            0.00           1406220.00                0.00            0.00  
此表中只有四条记录,即
tableSourcePentaho
。Pentaho正在使用以下模式对表进行规范化,其中我们将字段更改为新名称,并按照
denoms
对它们进行分组:

Fieldname               Type              new Field 
-------------------------------------------------------
Beg_Bal_Pennies          1                  Beg_Bal
Beg_Bal_Nickels          5                  Beg_Bal
Beg_Bal_Dimes            10                 Beg_Bal
Beg_Bal_Quaters          25                 Beg_Bal
Beg_Bal_Halves           50                 Beg_Bal
Beg_Bal_Dollar           101                Beg_Bal
Beg_Bal_Loose            98                 Beg_Bal
Beg_Bal_Ones             100                Beg_Bal
Beg_Bal_Twos             200                Beg_Bal
Beg_Bal_Fives            500                Beg_Bal
Beg_Bal_Tens             1000               Beg_Bal
Beg_Bal_Twenties         2000               Beg_Bal
Beg_Bal_Fifties          5000               Beg_Bal
Beg_Bal_Hundreds         10000              Beg_Bal
Inb_Bulk_Pennies          1                 Cash_In
Inb_Bulk_Nickels          5                 Cash_In
Inb_Bulk_Dimes            10                Cash_In
Inb_Bulk_Quaters          25                Cash_In
Inb_Bulk_Halves           50                Cash_In
Inb_Bulk_Dollar           101               Cash_In
Inb_Bulk_Loose            98                Cash_In
Inb_Bulk_Ones             100               Cash_In
Inb_Bulk_Twos             200               Cash_In
Inb_Bulk_Fives            500               Cash_In
Inb_Bulk_Tens             1000              Cash_In
Inb_Bulk_Twenties         2000              Cash_In
Inb_Bulk_Fifties          5000              Cash_In
Inb_Bulk_Hundreds         10000             Cash_In
Out_Pack_Pennies          1                 Cash_Out
Out_Pack_Nickels          5                 Cash_Out
Out_Pack_Dimes            10                Cash_Out
Out_Pack_Quaters          25                Cash_Out
Out_Pack_Halves           50                Cash_Out
Out_Pack_Dollar           101               Cash_Out
Out_Pack_Loose            98                Cash_Out
Out_Pack_Ones             100               Cash_Out
Out_Pack_Twos             200               Cash_Out
Out_Pack_Fives            500               Cash_Out
Out_Pack_Tens             1000              Cash_Out
Out_Pack_Twenties         2000              Cash_Out
Out_Pack_Fifties          5000              Cash_Out
Out_Pack_Hundreds         10000             Cash_Out
Inv_Adj_Pennies           1                 Inv_Adj
Inv_Adj_Nickels           5                 Inv_Adj
Inv_Adj_Dimes             10                Inv_Adj
Inv_Adj_Quaters           25                Inv_Adj
Inv_Adj_Halves            50                Inv_Adj
Inv_Adj_Dollar            101               Inv_Adj
Inv_Adj_Loose             98                Inv_Adj
Inv_Adj_Ones              100               Inv_Adj
Inv_Adj_Twos              200               Inv_Adj
Inv_Adj_Fives             500               Inv_Adj
Inv_Adj_Tens              1000              Inv_Adj
Inv_Adj_Twenties          2000              Inv_Adj
Inv_Adj_Fifties           5000              Inv_Adj
Inv_Adj_Hundreds          10000             Inv_Adj
Phy_Bal_Pennies           1                 Phy_Bal
Phy_Bal_Nickels           5                 Phy_Bal
Phy_Bal_Dimes             10                Phy_Bal
Phy_Bal_Quaters           25                Phy_Bal
Phy_Bal_Halves            50                Phy_Bal
Phy_Bal_Dollar            101               Phy_Bal
Phy_Bal_Loose             98                Phy_Bal
Phy_Bal_Ones              100               Phy_Bal
Phy_Bal_Twos              200               Phy_Bal
Phy_Bal_Fives             500               Phy_Bal
Phy_Bal_Tens              1000              Phy_Bal
Phy_Bal_Twenties          2000              Phy_Bal
Phy_Bal_Fifties           5000              Phy_Bal
Phy_Bal_Hundreds          10000             Phy_Bal
Inv_Tran_Pennies           1                Ship_In
Inv_Tran_Nickels           5                Ship_In
Inv_Tran_Dimes             10               Ship_In
Inv_Tran_Quaters           25               Ship_In
Inv_Tran_Halves            50               Ship_In
Inv_Tran_Dollar            101              Ship_In
Inv_Tran_Loose             98               Ship_In
Inv_Tran_Ones              100              Ship_In
Inv_Tran_Twos              200              Ship_In
Inv_Tran_Fives             500              Ship_In
Inv_Tran_Tens              1000             Ship_In
Inv_Tran_Twenties          2000             Ship_In
Inv_Tran_Fifties           5000             Ship_In
Inv_Tran_Hundreds          10000            Ship_In
Out_Bulk_Pennies           1                Ship_Out
Out_Bulk_Nickels           5                Ship_Out
Out_Bulk_Dimes             10               Ship_Out
Out_Bulk_Quaters           25               Ship_Out
Out_Bulk_Halves            50               Ship_Out
Out_Bulk_Dollar            101              Ship_Out
Out_Bulk_Loose             98               Ship_Out
Out_Bulk_Ones              100              Ship_Out
Out_Bulk_Twos              200              Ship_Out
Out_Bulk_Fives             500              Ship_Out
Out_Bulk_Tens              1000             Ship_Out
Out_Bulk_Twenties          2000             Ship_Out
Out_Bulk_Fifties           5000             Ship_Out
Out_Bulk_Hundreds          10000            Ship_Out
我们没有为此进行任何
聚合
,因此我想将/pivot表转换为
targetTable
,其中查询结果必须如下所示:

InventoryID, Rep_Create_Date, Denom,    Beg_Bal,    Phy_Bal,    Cash_In,    Cash_Out, Ship_In,   Ship_Out, Inv_Adj
014          20160907           1       000         000         000         000         000      000          000
014          20160907           5       000         000         000         000         000      000          000
014          20160907           10      000         000         000         000         000      000          000
014          20160907           25      000         000         000         000         000      000          000
014          20160907           50      000         000         000         000         000      000          000
014          20160907           101     000         000         000         000         000      000          000
014          20160907           98      000         000         000         000         000      000          000
014          20160907           100     000         000         000         000         000      000          000
014          20160907           200     000         000         000         000         000      000          000
014          20160907           500     000         000         000         000         000      000          000
014          20160907           1000    000         000         000         000         000      000          000
014          20160907           2000    35406000    39596000    4190000     000         000      000          000
014          20160907           5000    000         000         000         000         000      000          000
014          20160907           10000   000         000         000         000         000      000          000
018          20160907           1       000         000         000         000         000      000          000
018          20160907           5       000         000         000         000         000      000          000
018          20160907           10      000         000         000         000         000      000          000
018          20160907           25      000         000         000         000         000      000          000
018          20160907           50      000         000         000         000         000      000          000
018          20160907           101     000         000         000         000         000      000          000
018          20160907           98      000         000         000         000         000      000          000
018          20160907           100     000         000         000         000         000      000          000
018          20160907           200     000         000         000         000         000      000          000
018          20160907           500     000         000         000         000         000      000          000
018          20160907           1000    000         000         000         000         000      000          000
018          20160907           2000    91960000    96266000    34706000    30400000    000      000          000
018          20160907           5000    000         000         000         000         000      000          000
018          20160907           10000   000         000         000         000         000      000          000
050          20160907           1       000         000         000         000         000      000          000
050          20160907           5       000         000         000         000         000      000          000
050          20160907           10      000         000         000         000         000      000          000
050          20160907           25      000         000         000         000         000      000          000
050          20160907           50      000         000         000         000         000      000          000
050          20160907           101     000         000         000         000         000      000          000
050          20160907           98      000         000         000         000         000      000          000
050          20160907           100     000         000         000         000         000      000          000
050          20160907           200     000         000         000         000         000      000          000
050          20160907           500     000         000         000         000         000      000          000
050          20160907           1000    000         000         000         000         000      000          000
050          20160907           2000    97030000    85416000    1386000     13000000    000      000          000
050          20160907           5000    000         000         000         000         000      000          000
050          20160907           10000   000         000         000         000         000      000          000
073          20160907           1       000         000         000         000         000      000          000
073          20160907           5       000         000         000         000         000      000          000
073          20160907           10      000         000         000         000         000      000          000
073          20160907           25      000         000         000         000         000      000          000
073          20160907           50      000         000         000         000         000      000          000
073          20160907           101     000         000         000         000         000      000          000
073          20160907           98      000         000         000         000         000      000          000
073          20160907           100     000         000         000         000         000      000          000
073          20160907           200     000         000         000         000         000      000          000
073          20160907           500     000         000         000         000         000      000          000
073          20160907           1000    000         000         000         000         000      000          000
073          20160907           2000    151736000   140622000   49486000    60600000    000      000          000
073          20160907           5000    000         000         000         000         000      000          000
073          20160907           10000   000         000         000         000         000      000          000
我已经尝试了很多事情,比如和,但是没有得到我想要的。请帮我摆脱这个。我是数据库的新手

PS:很抱歉问了这么长的问题(

是一种解决方案,一次可以“取消打印多个列”。 前面是示例数据的创建,因此请在注释之后查找解决方案

IF OBJECT_ID( 'TestData') IS NOT NULL
    DROP TABLE TestData;

CREATE TABLE TestData(
   Rep_Create_Date   DATE 
  ,InventoryID       INTEGER
  ,Beg_Bal_Pennies   NUMERIC(10,2)
  ,Beg_Bal_Nickels   NUMERIC(10,2)
  ,Beg_Bal_Dimes     NUMERIC(10,2)
  ,Beg_Bal_Quaters   NUMERIC(10,2)
  ,Beg_Bal_Halves    NUMERIC(10,2)
  ,Beg_Bal_Dollar    NUMERIC(10,2)
  ,Beg_Bal_Loose     NUMERIC(10,2)
  ,Beg_Bal_Ones      NUMERIC(10,2)
  ,Beg_Bal_Twos      NUMERIC(10,2)
  ,Beg_Bal_Fives     NUMERIC(10,2)
  ,Beg_Bal_Tens      NUMERIC(10,2)
  ,Beg_Bal_Twenties  NUMERIC(10,2)
  ,Beg_Bal_Fifties   NUMERIC(10,2)
  ,Beg_Bal_Hundreds  NUMERIC(10,2)
  ,Inb_Bulk_Pennies  NUMERIC(10,2)
  ,Inb_Bulk_Nickels  NUMERIC(10,2)
  ,Inb_Bulk_Dimes    NUMERIC(10,2)
  ,Inb_Bulk_Quaters  NUMERIC(10,2)
  ,Inb_Bulk_Halves   NUMERIC(10,2)
  ,Inb_Bulk_Dollar   NUMERIC(10,2)
  ,Inb_Bulk_Loose    NUMERIC(10,2)
  ,Inb_Bulk_Ones     NUMERIC(10,2)
  ,Inb_Bulk_Twos     NUMERIC(10,2)
  ,Inb_Bulk_Fives    NUMERIC(10,2)
  ,Inb_Bulk_Tens     NUMERIC(10,2)
  ,Inb_Bulk_Twenties NUMERIC(10,2)
  ,Inb_Bulk_Fifties  NUMERIC(10,2)
  ,Inb_Bulk_Hundreds NUMERIC(10,2)
  ,Out_Bulk_Pennies  NUMERIC(10,2)
  ,Out_Bulk_Nickels  NUMERIC(10,2)
  ,Out_Bulk_Dimes    NUMERIC(10,2)
  ,Out_Bulk_Quaters  NUMERIC(10,2)
  ,Out_Bulk_Halves   NUMERIC(10,2)
  ,Out_Bulk_Dollar   NUMERIC(10,2)
  ,Out_Bulk_Loose    NUMERIC(10,2)
  ,Out_Bulk_Ones     NUMERIC(10,2)
  ,Out_Bulk_Twos     NUMERIC(10,2)
  ,Out_Bulk_Fives    NUMERIC(10,2)
  ,Out_Bulk_Tens     NUMERIC(10,2)
  ,Out_Bulk_Twenties NUMERIC(10,2)
  ,Out_Bulk_Fifties  NUMERIC(10,2)
  ,Out_Bulk_Hundreds NUMERIC(10,2)
  ,Out_Pack_Pennies  NUMERIC(10,2)
  ,Out_Pack_Nickels  NUMERIC(10,2)
  ,Out_Pack_Dimes    NUMERIC(10,2)
  ,Out_Pack_Quaters  NUMERIC(10,2)
  ,Out_Pack_Halves   NUMERIC(10,2)
  ,Out_Pack_Dollar   NUMERIC(10,2)
  ,Out_Pack_Loose    NUMERIC(10,2)
  ,Out_Pack_Ones     NUMERIC(10,2)
  ,Out_Pack_Twos     NUMERIC(10,2)
  ,Out_Pack_Fives    NUMERIC(10,2)
  ,Out_Pack_Tens     NUMERIC(10,2)
  ,Out_Pack_Twenties NUMERIC(10,2)
  ,Out_Pack_Fifties  NUMERIC(10,2)
  ,Out_Pack_Hundreds NUMERIC(10,2)
  ,Inv_Tran_Pennies  NUMERIC(10,2)
  ,Inv_Tran_Nickels  NUMERIC(10,2)
  ,Inv_Tran_Dimes    NUMERIC(10,2)
  ,Inv_Tran_Quaters  NUMERIC(10,2)
  ,Inv_Tran_Halves   NUMERIC(10,2)
  ,Inv_Tran_Dollar   NUMERIC(10,2)
  ,Inv_Tran_Loose    NUMERIC(10,2)
  ,Inv_Tran_Ones     NUMERIC(10,2)
  ,Inv_Tran_Twos     NUMERIC(10,2)
  ,Inv_Tran_Fives    NUMERIC(10,2)
  ,Inv_Tran_Tens     NUMERIC(10,2)
  ,Inv_Tran_Twenties NUMERIC(10,2)
  ,Inv_Tran_Fifties  NUMERIC(10,2)
  ,Inv_Tran_Hundreds NUMERIC(10,2)
  ,Inv_Adj_Pennies   NUMERIC(10,2)
  ,Inv_Adj_Nickels   NUMERIC(10,2)
  ,Inv_Adj_Dimes     NUMERIC(10,2)
  ,Inv_Adj_Quaters   NUMERIC(10,2)
  ,Inv_Adj_Halves    NUMERIC(10,2)
  ,Inv_Adj_Dollar    NUMERIC(10,2)
  ,Inv_Adj_Loose     NUMERIC(10,2)
  ,Inv_Adj_Ones      NUMERIC(10,2)
  ,Inv_Adj_Twos      NUMERIC(10,2)
  ,Inv_Adj_Fives     NUMERIC(10,2)
  ,Inv_Adj_Tens      NUMERIC(10,2)
  ,Inv_Adj_Twenties  NUMERIC(10,2)
  ,Inv_Adj_Fifties   NUMERIC(10,2)
  ,Inv_Adj_Hundreds  NUMERIC(10,2)
  ,Phy_Bal_Pennies   NUMERIC(10,2)
  ,Phy_Bal_Nickels   NUMERIC(10,2)
  ,Phy_Bal_Dimes     NUMERIC(10,2)
  ,Phy_Bal_Quaters   NUMERIC(10,2)
  ,Phy_Bal_Halves    NUMERIC(10,2)
  ,Phy_Bal_Dollar    NUMERIC(10,2)
  ,Phy_Bal_Loose     NUMERIC(10,2)
  ,Phy_Bal_Ones      NUMERIC(10,2)
  ,Phy_Bal_Twos      NUMERIC(10,2)
  ,Phy_Bal_Fives     NUMERIC(10,2)
  ,Phy_Bal_Tens      NUMERIC(10,2)
  ,Phy_Bal_Twenties  NUMERIC(10,2)
  ,Phy_Bal_Fifties   NUMERIC(10,2)
  ,Phy_Bal_Hundreds  NUMERIC(10,2)
);
INSERT INTO TestData(Rep_Create_Date,InventoryID,Beg_Bal_Pennies,Beg_Bal_Nickels,Beg_Bal_Dimes,Beg_Bal_Quaters,Beg_Bal_Halves,Beg_Bal_Dollar,Beg_Bal_Loose,Beg_Bal_Ones,Beg_Bal_Twos,Beg_Bal_Fives,Beg_Bal_Tens,Beg_Bal_Twenties,Beg_Bal_Fifties,Beg_Bal_Hundreds,Inb_Bulk_Pennies,Inb_Bulk_Nickels,Inb_Bulk_Dimes,Inb_Bulk_Quaters,Inb_Bulk_Halves,Inb_Bulk_Dollar,Inb_Bulk_Loose,Inb_Bulk_Ones,Inb_Bulk_Twos,Inb_Bulk_Fives,Inb_Bulk_Tens,Inb_Bulk_Twenties,Inb_Bulk_Fifties,Inb_Bulk_Hundreds,Out_Bulk_Pennies,Out_Bulk_Nickels,Out_Bulk_Dimes,Out_Bulk_Quaters,Out_Bulk_Halves,Out_Bulk_Dollar,Out_Bulk_Loose,Out_Bulk_Ones,Out_Bulk_Twos,Out_Bulk_Fives,Out_Bulk_Tens,Out_Bulk_Twenties,Out_Bulk_Fifties,Out_Bulk_Hundreds,Out_Pack_Pennies,Out_Pack_Nickels,Out_Pack_Dimes,Out_Pack_Quaters,Out_Pack_Halves,Out_Pack_Dollar,Out_Pack_Loose,Out_Pack_Ones,Out_Pack_Twos,Out_Pack_Fives,Out_Pack_Tens,Out_Pack_Twenties,Out_Pack_Fifties,Out_Pack_Hundreds,Inv_Tran_Pennies,Inv_Tran_Nickels,Inv_Tran_Dimes,Inv_Tran_Quaters,Inv_Tran_Halves,Inv_Tran_Dollar,Inv_Tran_Loose,Inv_Tran_Ones,Inv_Tran_Twos,Inv_Tran_Fives,Inv_Tran_Tens,Inv_Tran_Twenties,Inv_Tran_Fifties,Inv_Tran_Hundreds,Inv_Adj_Pennies,Inv_Adj_Nickels,Inv_Adj_Dimes,Inv_Adj_Quaters,Inv_Adj_Halves,Inv_Adj_Dollar,Inv_Adj_Loose,Inv_Adj_Ones,Inv_Adj_Twos,Inv_Adj_Fives,Inv_Adj_Tens,Inv_Adj_Twenties,Inv_Adj_Fifties,Inv_Adj_Hundreds,Phy_Bal_Pennies,Phy_Bal_Nickels,Phy_Bal_Dimes,Phy_Bal_Quaters,Phy_Bal_Halves,Phy_Bal_Dollar,Phy_Bal_Loose,Phy_Bal_Ones,Phy_Bal_Twos,Phy_Bal_Fives,Phy_Bal_Tens,Phy_Bal_Twenties,Phy_Bal_Fifties,Phy_Bal_Hundreds) VALUES ('20160907',014,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,354060.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,41900.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,00.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,395960.00,0.00,0.00);
INSERT INTO TestData(Rep_Create_Date,InventoryID,Beg_Bal_Pennies,Beg_Bal_Nickels,Beg_Bal_Dimes,Beg_Bal_Quaters,Beg_Bal_Halves,Beg_Bal_Dollar,Beg_Bal_Loose,Beg_Bal_Ones,Beg_Bal_Twos,Beg_Bal_Fives,Beg_Bal_Tens,Beg_Bal_Twenties,Beg_Bal_Fifties,Beg_Bal_Hundreds,Inb_Bulk_Pennies,Inb_Bulk_Nickels,Inb_Bulk_Dimes,Inb_Bulk_Quaters,Inb_Bulk_Halves,Inb_Bulk_Dollar,Inb_Bulk_Loose,Inb_Bulk_Ones,Inb_Bulk_Twos,Inb_Bulk_Fives,Inb_Bulk_Tens,Inb_Bulk_Twenties,Inb_Bulk_Fifties,Inb_Bulk_Hundreds,Out_Bulk_Pennies,Out_Bulk_Nickels,Out_Bulk_Dimes,Out_Bulk_Quaters,Out_Bulk_Halves,Out_Bulk_Dollar,Out_Bulk_Loose,Out_Bulk_Ones,Out_Bulk_Twos,Out_Bulk_Fives,Out_Bulk_Tens,Out_Bulk_Twenties,Out_Bulk_Fifties,Out_Bulk_Hundreds,Out_Pack_Pennies,Out_Pack_Nickels,Out_Pack_Dimes,Out_Pack_Quaters,Out_Pack_Halves,Out_Pack_Dollar,Out_Pack_Loose,Out_Pack_Ones,Out_Pack_Twos,Out_Pack_Fives,Out_Pack_Tens,Out_Pack_Twenties,Out_Pack_Fifties,Out_Pack_Hundreds,Inv_Tran_Pennies,Inv_Tran_Nickels,Inv_Tran_Dimes,Inv_Tran_Quaters,Inv_Tran_Halves,Inv_Tran_Dollar,Inv_Tran_Loose,Inv_Tran_Ones,Inv_Tran_Twos,Inv_Tran_Fives,Inv_Tran_Tens,Inv_Tran_Twenties,Inv_Tran_Fifties,Inv_Tran_Hundreds,Inv_Adj_Pennies,Inv_Adj_Nickels,Inv_Adj_Dimes,Inv_Adj_Quaters,Inv_Adj_Halves,Inv_Adj_Dollar,Inv_Adj_Loose,Inv_Adj_Ones,Inv_Adj_Twos,Inv_Adj_Fives,Inv_Adj_Tens,Inv_Adj_Twenties,Inv_Adj_Fifties,Inv_Adj_Hundreds,Phy_Bal_Pennies,Phy_Bal_Nickels,Phy_Bal_Dimes,Phy_Bal_Quaters,Phy_Bal_Halves,Phy_Bal_Dollar,Phy_Bal_Loose,Phy_Bal_Ones,Phy_Bal_Twos,Phy_Bal_Fives,Phy_Bal_Tens,Phy_Bal_Twenties,Phy_Bal_Fifties,Phy_Bal_Hundreds) VALUES ('20160907',018,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,919600.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,347060.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,00.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,304000.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,962660.00,0.00,0.00);
INSERT INTO TestData(Rep_Create_Date,InventoryID,Beg_Bal_Pennies,Beg_Bal_Nickels,Beg_Bal_Dimes,Beg_Bal_Quaters,Beg_Bal_Halves,Beg_Bal_Dollar,Beg_Bal_Loose,Beg_Bal_Ones,Beg_Bal_Twos,Beg_Bal_Fives,Beg_Bal_Tens,Beg_Bal_Twenties,Beg_Bal_Fifties,Beg_Bal_Hundreds,Inb_Bulk_Pennies,Inb_Bulk_Nickels,Inb_Bulk_Dimes,Inb_Bulk_Quaters,Inb_Bulk_Halves,Inb_Bulk_Dollar,Inb_Bulk_Loose,Inb_Bulk_Ones,Inb_Bulk_Twos,Inb_Bulk_Fives,Inb_Bulk_Tens,Inb_Bulk_Twenties,Inb_Bulk_Fifties,Inb_Bulk_Hundreds,Out_Bulk_Pennies,Out_Bulk_Nickels,Out_Bulk_Dimes,Out_Bulk_Quaters,Out_Bulk_Halves,Out_Bulk_Dollar,Out_Bulk_Loose,Out_Bulk_Ones,Out_Bulk_Twos,Out_Bulk_Fives,Out_Bulk_Tens,Out_Bulk_Twenties,Out_Bulk_Fifties,Out_Bulk_Hundreds,Out_Pack_Pennies,Out_Pack_Nickels,Out_Pack_Dimes,Out_Pack_Quaters,Out_Pack_Halves,Out_Pack_Dollar,Out_Pack_Loose,Out_Pack_Ones,Out_Pack_Twos,Out_Pack_Fives,Out_Pack_Tens,Out_Pack_Twenties,Out_Pack_Fifties,Out_Pack_Hundreds,Inv_Tran_Pennies,Inv_Tran_Nickels,Inv_Tran_Dimes,Inv_Tran_Quaters,Inv_Tran_Halves,Inv_Tran_Dollar,Inv_Tran_Loose,Inv_Tran_Ones,Inv_Tran_Twos,Inv_Tran_Fives,Inv_Tran_Tens,Inv_Tran_Twenties,Inv_Tran_Fifties,Inv_Tran_Hundreds,Inv_Adj_Pennies,Inv_Adj_Nickels,Inv_Adj_Dimes,Inv_Adj_Quaters,Inv_Adj_Halves,Inv_Adj_Dollar,Inv_Adj_Loose,Inv_Adj_Ones,Inv_Adj_Twos,Inv_Adj_Fives,Inv_Adj_Tens,Inv_Adj_Twenties,Inv_Adj_Fifties,Inv_Adj_Hundreds,Phy_Bal_Pennies,Phy_Bal_Nickels,Phy_Bal_Dimes,Phy_Bal_Quaters,Phy_Bal_Halves,Phy_Bal_Dollar,Phy_Bal_Loose,Phy_Bal_Ones,Phy_Bal_Twos,Phy_Bal_Fives,Phy_Bal_Tens,Phy_Bal_Twenties,Phy_Bal_Fifties,Phy_Bal_Hundreds) VALUES ('20160907',050,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,970300.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,13860.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,00.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,130000.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,85416000,0.00,0.00);
INSERT INTO TestData(Rep_Create_Date,InventoryID,Beg_Bal_Pennies,Beg_Bal_Nickels,Beg_Bal_Dimes,Beg_Bal_Quaters,Beg_Bal_Halves,Beg_Bal_Dollar,Beg_Bal_Loose,Beg_Bal_Ones,Beg_Bal_Twos,Beg_Bal_Fives,Beg_Bal_Tens,Beg_Bal_Twenties,Beg_Bal_Fifties,Beg_Bal_Hundreds,Inb_Bulk_Pennies,Inb_Bulk_Nickels,Inb_Bulk_Dimes,Inb_Bulk_Quaters,Inb_Bulk_Halves,Inb_Bulk_Dollar,Inb_Bulk_Loose,Inb_Bulk_Ones,Inb_Bulk_Twos,Inb_Bulk_Fives,Inb_Bulk_Tens,Inb_Bulk_Twenties,Inb_Bulk_Fifties,Inb_Bulk_Hundreds,Out_Bulk_Pennies,Out_Bulk_Nickels,Out_Bulk_Dimes,Out_Bulk_Quaters,Out_Bulk_Halves,Out_Bulk_Dollar,Out_Bulk_Loose,Out_Bulk_Ones,Out_Bulk_Twos,Out_Bulk_Fives,Out_Bulk_Tens,Out_Bulk_Twenties,Out_Bulk_Fifties,Out_Bulk_Hundreds,Out_Pack_Pennies,Out_Pack_Nickels,Out_Pack_Dimes,Out_Pack_Quaters,Out_Pack_Halves,Out_Pack_Dollar,Out_Pack_Loose,Out_Pack_Ones,Out_Pack_Twos,Out_Pack_Fives,Out_Pack_Tens,Out_Pack_Twenties,Out_Pack_Fifties,Out_Pack_Hundreds,Inv_Tran_Pennies,Inv_Tran_Nickels,Inv_Tran_Dimes,Inv_Tran_Quaters,Inv_Tran_Halves,Inv_Tran_Dollar,Inv_Tran_Loose,Inv_Tran_Ones,Inv_Tran_Twos,Inv_Tran_Fives,Inv_Tran_Tens,Inv_Tran_Twenties,Inv_Tran_Fifties,Inv_Tran_Hundreds,Inv_Adj_Pennies,Inv_Adj_Nickels,Inv_Adj_Dimes,Inv_Adj_Quaters,Inv_Adj_Halves,Inv_Adj_Dollar,Inv_Adj_Loose,Inv_Adj_Ones,Inv_Adj_Twos,Inv_Adj_Fives,Inv_Adj_Tens,Inv_Adj_Twenties,Inv_Adj_Fifties,Inv_Adj_Hundreds,Phy_Bal_Pennies,Phy_Bal_Nickels,Phy_Bal_Dimes,Phy_Bal_Quaters,Phy_Bal_Halves,Phy_Bal_Dollar,Phy_Bal_Loose,Phy_Bal_Ones,Phy_Bal_Twos,Phy_Bal_Fives,Phy_Bal_Tens,Phy_Bal_Twenties,Phy_Bal_Fifties,Phy_Bal_Hundreds) VALUES ('20160907',073,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,1517360.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,494860.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,00.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,606000.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,1406220.00,0.00,0.00);


--This is the actual solution
SELECT td.InventoryID
    ,td.Rep_Create_Date
    ,up.Denom
    ,up.Beg_Bal
    ,up.Phy_Bal
    ,up.Cash_In
    ,up.Cash_Out
    ,up.Ship_In
    ,up.Ship_Out
    ,up.Inv_Adj
FROM TestData td
CROSS APPLY (VALUES (1    , Beg_Bal_Pennies   , Inb_Bulk_Pennies     , Out_Pack_Pennies   , Inv_Adj_Pennies  , Phy_Bal_Pennies , Inv_Tran_Pennies , Out_Bulk_Pennies ),
                    (5    , Beg_Bal_Nickels   , Inb_Bulk_Nickels     , Out_Pack_Nickels   , Inv_Adj_Nickels  , Phy_Bal_Nickels , Inv_Tran_Nickels , Out_Bulk_Nickels ),
                    (10   , Beg_Bal_Dimes     , Inb_Bulk_Dimes       , Out_Pack_Dimes     , Inv_Adj_Dimes    , Phy_Bal_Dimes   , Inv_Tran_Dimes   , Out_Bulk_Dimes   ),
                    (25   , Beg_Bal_Quaters   , Inb_Bulk_Quaters     , Out_Pack_Quaters   , Inv_Adj_Quaters  , Phy_Bal_Quaters , Inv_Tran_Quaters , Out_Bulk_Quaters ),
                    (50   , Beg_Bal_Halves    , Inb_Bulk_Halves      , Out_Pack_Halves    , Inv_Adj_Halves   , Phy_Bal_Halves  , Inv_Tran_Halves  , Out_Bulk_Halves  ),
                    (101  , Beg_Bal_Dollar    , Inb_Bulk_Dollar      , Out_Pack_Dollar    , Inv_Adj_Dollar   , Phy_Bal_Dollar  , Inv_Tran_Dollar  , Out_Bulk_Dollar  ),
                    (98   , Beg_Bal_Loose     , Inb_Bulk_Loose       , Out_Pack_Loose     , Inv_Adj_Loose    , Phy_Bal_Loose   , Inv_Tran_Loose   , Out_Bulk_Loose   ),
                    (100  , Beg_Bal_Ones      , Inb_Bulk_Ones        , Out_Pack_Ones      , Inv_Adj_Ones     , Phy_Bal_Ones    , Inv_Tran_Ones    , Out_Bulk_Ones    ),
                    (200  , Beg_Bal_Twos      , Inb_Bulk_Twos        , Out_Pack_Twos      , Inv_Adj_Twos     , Phy_Bal_Twos    , Inv_Tran_Twos    , Out_Bulk_Twos    ),
                    (500  , Beg_Bal_Fives     , Inb_Bulk_Fives       , Out_Pack_Fives     , Inv_Adj_Fives    , Phy_Bal_Fives   , Inv_Tran_Fives   , Out_Bulk_Fives   ),
                    (1000 , Beg_Bal_Tens      , Inb_Bulk_Tens        , Out_Pack_Tens      , Inv_Adj_Tens     , Phy_Bal_Tens    , Inv_Tran_Tens    , Out_Bulk_Tens    ),
                    (2000 , Beg_Bal_Twenties  , Inb_Bulk_Twenties    , Out_Pack_Twenties  , Inv_Adj_Twenties , Phy_Bal_Twenties, Inv_Tran_Twenties, Out_Bulk_Twenties),
                    (5000 , Beg_Bal_Fifties   , Inb_Bulk_Fifties     , Out_Pack_Fifties   , Inv_Adj_Fifties  , Phy_Bal_Fifties , Inv_Tran_Fifties , Out_Bulk_Fifties ),
                    (10000, Beg_Bal_Hundreds  , Inb_Bulk_Hundreds    , Out_Pack_Hundreds  , Inv_Adj_Hundreds , Phy_Bal_Hundreds, Inv_Tran_Hundreds, Out_Bulk_Hundreds)) up(Denom, Beg_Bal, Phy_Bal, Cash_In, Cash_Out, Ship_In, Ship_Out, Inv_Adj)

非常棒的回答@Luis,谢谢!这就是我想要的。顺便说一句,欢迎来到StackOverFlow!