0

我有一个返回这样的数据的查询:

Store    Product    CasesPerStore
Bob's    Original       2
Bob's    Super          1
Tom's    Original       5
Pete's   Original       9
Pete's   Super          2

我想将它加入到 Store 的另一个查询中,最终得到以下结果:

Other query headings....       Store    Original CasesPerStore    Super CasesPerStore
Other query data........       Bob's             2                        1
Other query data........       Tom's             5
Other query data........       Pete's            9                        2

我可以使用交叉表查询对原始数据执行此操作,但是我无法在连接中引用新的交叉表标题(例如 [Original CasesPerStore] 和 [Super CasesPerStore]),可能是因为它们是动态的,即标题可能会改变取决于当时数据中包含哪些产品。

那么我怎样才能加入这个“旋转”的数据呢?

4

1 回答 1

2

如果您事先知道有多少产品,并且它们是永久固定的,那么这个简单的解决方案可能就足够了。通过使用Iif语句,您可以绕过数据的旋转,但它是硬编码的 SQL。

SELECT tbl.Store,
   SUM(Iif([Product] = "Original", [CasesPerStore], 0)) AS [Original CasesPerStore],
   SUM(Iif([Product] = "Original", 0, [CasesPerStore])) AS [Super CasesperStore]
FROM   tbl
GROUP  BY tbl.Store
于 2013-01-23T23:16:34.910 回答