我正在努力处理简单的数据安排问题。
我有2列数据 - 位置和区域。 默认情况下,数据显示如下:
Area1 Location1
Area1 Location2
Area2 Location3
Area3 Location4
我想显示如下数据:
Area1 Area2 Area3
Location1 Location3 Location4
Location2
抱歉格式化,我希望它有道理。 谢谢
编辑 这是我用来获取数据的实际查询:
select a.location_area_code, l.location_code
from stock_location_level as l
inner join stock_location as a
on l.location_code = a.location_code
where l.branch_number = '99' and a.suspended = 'N'
group by a.location_area_code, l.location_code
having SUM(l.physical_quantity) = 0
Order by a.location_area_code, l.location_code
答案 0 :(得分:1)
在您的示例中,位置1与位置3和4的唯一共同点是它们是各自区域中的第一个位置。
将其添加到数据集中。
row_number() OVER (PARTITION BY [area] ORDER BY [Location]) as row_num
然后创建一个在新row_num字段上分组的矩阵行和在区域字段上分组的列。
答案 1 :(得分:0)
请尝试使用Matrix ..您已经拥有所需格式的数据,例如Areay&地点.. 您只需要在Area上进行列分组并将显示值设置为Location。
有关详细信息,请参阅Link