我正在尝试将行转移到列中。我基本上有很多行,其中每N行代表一个表上的一行,我想列为结果集。我举一个简短的例子:
我有一个像这样的表结构:
请记住,我删除了很多行以简化此示例。每6行意味着结果集中有1行,我希望如下:
答案 0 :(得分:1)
(不是真正的答案,但这就是我所拥有的。)
这是一个名称/值对表,对吗?您的查询将需要一些标识哪些“行”行彼此关联的内容。没有这样的东西,我看不出如何编写查询。关键因素是您绝不能假设数据将以任何特定顺序从SQL(至少是服务器)返回。数据在内部的存储方式(但并非总是如此)决定了在未指定订单时如何返回数据。
另一个考虑因素:如果(何时?)缺少一行 - 例如,产品4没有价格B列?这将打破一个简单的“每六行”规则。 “如果错过了代码,或者在预期的订单中没有返回数据(如果没有),那么在每个新代码行开始时都会出现问题”。
如果你有一些分组项目的方法,请在更新的问题中告诉我们,但我不认为这个项目是特别可以解决的。
答案 1 :(得分:0)
我实际上是这样做的。 我写了一个SQL而...基于为结果集注册的列数。这样我就可以根据读取的值为N列编写动态SQL子句。最后,我只是将结果集插入临时表中,然后再进行操作。
非常感谢!